Wysłany: 2017-06-08, 16:40
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
Witam. W bazie danych tworzy mi si? podw?jny rekord po restarcie skryptu [ je?eli by? ju? utworzony ]. Jak temu zapobiec?
connect = dbConnect ( "sqlite" , "baza.db" )
if connect then
outputDebugString ( "Po??czenie z baz? SQLite zako?czy?o si? powodzeniem." )
tabela = dbExec ( connect , "CREATE TABLE IF NOT EXISTS player ( Nick TEXT, ID INTEGER PRIMARY KEY AUTOINCREMENT )" )
tabela_frakcja = dbExec ( connect , "CREATE TABLE IF NOT EXISTS frakcja ( Nick TEXT, Ranga TEXT, ID INTEGER PRIMARY KEY AUTOINCREMENT)" )
else
outputDebugString ( "Po??czenie z baz? SQLite zako?czy?o si? nie powodzeniem." )
stopResource ( getThisResource ())
end
addEventHandler ( "onResourceStart" , resourceRoot ,
function()
for k , v in pairs ( getElementsByType ( "player" )) do
local nick = getPlayerName ( v )
dbExec ( connect , "INSERT INTO player (Nick) VALUES (?)" , tostring ( nick ))
end
end
)
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:06
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
Stworzy?e? co? przez skrypt = wywal to przy nast?pnym resecie. Nie rozumiem dlaczego nie tworzysz tabel w przegl?darce .db.
Podpis
"amited" napisał/a :
Wysłany: 2017-06-08, 18:26
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
amited , A dok?adniej jak mam to wywali??
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:28
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
connect = dbConnect ( "sqlite" , "baza.db" )
addEventHandler ( "onResourceStart" , resourceRoot ,
function()
if connect then
outputDebugString ( "Po??czenie z baz? SQLite zako?czy?o si? powodzeniem." )
else
outputDebugString ( "Po??czenie z baz? SQLite zako?czy?o si? nie powodzeniem." )
stopResource ( getThisResource ())
end
for k , v in pairs ( getElementsByType ( "player" )) do
local nick = getPlayerName ( v )
dbExec ( connect , "INSERT INTO player (Nick) VALUES (?)" , tostring ( nick ))
end
end
)
Tyle sobie zostaw
Wysłany: 2017-06-08, 18:30
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
amited , Szczerze, to nic nie pomog?o.
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:32
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
Skoro przy ka?dym starcie tego skryptu wpisujesz dane do tabeli to nie rozumiem jak ci wpisuje 2x Tw?j nick
Podpis
"amited" napisał/a :
Wysłany: 2017-06-08, 18:34
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
amited , O Bo?e... chodzi o to, ?e: odpalam po raz pierwszy skrypt, dodaje si? rekord z moim nickiem. Je?eli ju? rekord jest w bazie danych ( m?j nick i jego ID ) to tworzy si? jeszcze raz rekord, ale inne ID. Kumasz?
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:38
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
Nie, nie potrafisz normalnie t?umaczy?. Masz czyst? baz?. Odpalasz skrypt i tworz? ci si? 2 rekordy. 2 Twoje nicki ale 2 r??ne id. Tak to zrozumia?em.
Podpis
"amited" napisał/a :
Wysłany: 2017-06-08, 18:39
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
amited , Mam czyst? baz? z tabel? o nazwie "player". Odpalam skrypt po czym dodaje m?j nick do bazy danych. Je?eli zrestartuj? skrypt to zn?w tworzy si? rekord w tabeli z moim nickiem po raz drugi.
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:43
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
No wi?c nie rozumiem twojego problemu. Skrypt dzia?a jak powinien.
Podpis
"amited" napisał/a :
Wysłany: 2017-06-08, 18:46
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
Pusta tabela:
Po starcie skryptu:
Po restarcie skryptu:
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:48
amited
Wiek: 26 Na forum: 3714 dni Posty: 1233
Nick w MP: Amited
Piwa : 512
No dalej nie rozumiem, Skrypt pobiera Tw?j nick i go umieszcza w tabeli. Masz drug? kolumn? ID na kt?rej jest AI. Co dalej?
Podpis
"amited" napisał/a :
Wysłany: 2017-06-08, 18:53
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
amited , Wcale nie wida?, ?e mam dwa razy ten sam nick w tabeli po restarcie. Nie chce aby dwa razy widnia? m?j nick, je?eli ju? jest ch?opie ...
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Wysłany: 2017-06-08, 18:57
_Haze
Peace Yo!
Wiek: 24 Na forum: 4184 dni Posty: 1648
Nick w MP: Haze
Piwa : 2628
addEventHandler ( "onResourceStart" , resourceRoot ,
function()
for k , v in pairs ( getElementsByType ( "player" )) do
local nick = getPlayerName ( v )
que = dbQuery ( connect , "SELECT * FROM player WHERE Nick =?" , nick )
result = dbPoll ( que , - 1 )
if not result [ 1 ] then
dbExec ( connect , "INSERT INTO player (Nick) VALUES (?)" , tostring ( nick ))
end
end
end )
Wysłany: 2017-06-08, 19:03
Atroth
Wiek: 23 Na forum: 3677 dni Posty: 1089
Nick w MP: Atroth
Piwa : 4808
Close.
Podpis
Użytkownik - 10-05-2016
Support Team - 17.06.2017
Moderator - 25.11.2017
Mod-Team - 02.07.2018
Tagi: tworzenie :: podwójnego :: rekordu :: tabeli :: restarcie
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: