Guten Abend, ich bin momentan dabei ein Script zu entbuggen das klappt auch ganz gut aber ein Fehler finde ich einfach nicht. Vielleicht findet ihr ihn ja.
Der Error
[21:38:24] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'UPDATE db_spielerfahrzeuge SET modelid='411',x='1444.989013',y='-1915.962036',z=' at line 1
[21:38:24] [DEBUG] CMySQLQuery::Execute[] - error will be triggered in OnQueryError
[21:38:24] [DEBUG] CMySQLQuery::Execute[] - starting query execution
[21:38:24] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'UPDATE db_spielerfahrzeuge SET modelid='411',x='1444.989013',y='-1915.962036',z=' at line 1
[21:38:24] [DEBUG] CMySQLQuery::Execute[] - error will be triggered in OnQueryError
Das habe ich mir in der Server log ausgeben lassen.
[21:38:23] UPDATE db_spielerfahrzeuge SET modelid='560',x='1824.525390',y='-2066.193115',z='13.087499',a='325.809295',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='1',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='58.919998',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='0'
[21:38:23] UPDATE db_spielerfahrzeuge SET modelid='560',x='1824.525390',y='-2066.193115',z='13.087499',a='325.809295',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='1',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='58.919998',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='0'UPDATE db_spielerfahrzeuge SET modelid='411',x='1444.989013',y='-1915.962036',z='13.227100',a='358.866394',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='0',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='100.000000',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='1'
[21:38:23] UPDATE db_spielerfahrzeuge SET modelid='560',x='1824.525390',y='-2066.193115',z='13.087499',a='325.809295',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='1',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='58.919998',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='0'UPDATE db_spielerfahrzeuge SET modelid='411',x='1444.989013',y='-1915.962036',z='13.227100',a='358.866394',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='0',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='100.000000',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='1'UPDATE db_spielerfahrzeuge SET modelid='522',x='922.627685',y='-1670.256469',z='13.539099',a='282.366912',interior='0',world='0',cc1='0',cc2='0',paintjob='0',vehhp='1000.000000',abgeschlossen='0',t1='0',t2='0',t3='0',t4='0',t5='0',t6='0',t7='0',t8='0',t9='0',t10='0',t11='0',t12='0',t13='0',t14='0',angemeldet='0',preis='0',nummernschild='N/A',tank='100.000000',km='0',towed='0',towedfreeprice='0',towedreason='NONE' WHERE name='Justin_Smith' AND slot='2'
Hier wird einmal ein UPDATE ausgeführt.
stock SaveOnlyOnePveh(playerid,slot)
{
new mainquery[10000],query[8000];
if(Pfahrzeug[slot][playerid][modelid] != 0)
{
GetVehicleHealth(Pfahrzeug[slot][playerid][Vehicle],Pfahrzeug[slot][playerid][HP]);
format(query,sizeof(query),"UPDATE "#DATENBANK"_spielerfahrzeuge SET modelid='%d',x='%f',y='%f',z='%f',a='%f',interior='%d',world='%d',cc1='%d',cc2='%d',paintjob='%d',vehhp='%f',abgeschlossen='%d',t1='%d',t2='%d',t3='%d',t4='%d',t5='%d',t6='%d',t7='%d',t8='%d',t9='%d',t10='%d',t11='%d',t12='%d',t13='%d',t14='%d',",
Pfahrzeug[slot][playerid][modelid],Pfahrzeug[slot][playerid][posx],Pfahrzeug[slot][playerid][posy],Pfahrzeug[slot][playerid][posz],Pfahrzeug[slot][playerid][posa],Pfahrzeug[slot][playerid][Interior],Pfahrzeug[slot][playerid][VirtualWorld],Pfahrzeug[slot][playerid][Colour1],Pfahrzeug[slot][playerid][Colour2],
Pfahrzeug[slot][playerid][Paintjob],Pfahrzeug[slot][playerid][HP],Pfahrzeug[slot][playerid][Abgeschlossen],Pfahrzeug[slot][playerid][Spoiler],Pfahrzeug[slot][playerid][Hood],Pfahrzeug[slot][playerid][Roof],
Pfahrzeug[slot][playerid][Sideskirt],Pfahrzeug[slot][playerid][Lamps],Pfahrzeug[slot][playerid][Nitro],Pfahrzeug[slot][playerid][Exhaust],Pfahrzeug[slot][playerid][Wheels],Pfahrzeug[slot][playerid][Stereo],
Pfahrzeug[slot][playerid][Hydraulics],Pfahrzeug[slot][playerid][FrontBumper],Pfahrzeug[slot][playerid][RearBumper],Pfahrzeug[slot][playerid][VentRight],Pfahrzeug[slot][playerid][VentLeft]);
strcat(mainquery,query);
format(query,sizeof(query),"angemeldet='%d',preis='%d',nummernschild='%s',tank='%f',km='%d',towed='%d',towedfreeprice='%d',towedreason='%s' WHERE name='%s' AND slot='%d'",
Pfahrzeug[slot][playerid][Angemeldet],Pfahrzeug[slot][playerid][Preis],Pfahrzeug[slot][playerid][Nummernschild],
vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Tank],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Kilometer],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Abgeschleppt],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][AbgeschlepptPreis],
vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][AbgeschlepptGrund],Pfahrzeug[slot][playerid][Besitzer],slot);
strcat(mainquery,query);
printf("%s", mainquery);
mysql_function_query(MYSQLVerbindung,mainquery,false,"","");
}
return 1;
}
Und hier wird ein UPDATE ausgeführt.
for(;slot<MAX_PLAYER_VEHS;slot++)
{
if(!strcmp(Spieler[playerid][pName],Pfahrzeug[slot][playerid][Besitzer],true))
{
if(Pfahrzeug[slot][playerid][modelid] != 0)
{
GetVehicleHealth(Pfahrzeug[slot][playerid][Vehicle],Pfahrzeug[slot][playerid][HP]);
format(query,sizeof(query),"UPDATE "#DATENBANK"_spielerfahrzeuge SET modelid='%d',x='%f',y='%f',z='%f',a='%f',interior='%d',world='%d',cc1='%d',cc2='%d',paintjob='%d',vehhp='%f',abgeschlossen='%d',t1='%d',t2='%d',t3='%d',t4='%d',t5='%d',t6='%d',t7='%d',t8='%d',t9='%d',t10='%d',t11='%d',t12='%d',t13='%d',t14='%d',",
Pfahrzeug[slot][playerid][modelid],Pfahrzeug[slot][playerid][posx],Pfahrzeug[slot][playerid][posy],Pfahrzeug[slot][playerid][posz],Pfahrzeug[slot][playerid][posa],Pfahrzeug[slot][playerid][Interior],Pfahrzeug[slot][playerid][VirtualWorld],Pfahrzeug[slot][playerid][Colour1],Pfahrzeug[slot][playerid][Colour2],
Pfahrzeug[slot][playerid][Paintjob],Pfahrzeug[slot][playerid][HP],Pfahrzeug[slot][playerid][Abgeschlossen],Pfahrzeug[slot][playerid][Spoiler],Pfahrzeug[slot][playerid][Hood],Pfahrzeug[slot][playerid][Roof],
Pfahrzeug[slot][playerid][Sideskirt],Pfahrzeug[slot][playerid][Lamps],Pfahrzeug[slot][playerid][Nitro],Pfahrzeug[slot][playerid][Exhaust],Pfahrzeug[slot][playerid][Wheels],Pfahrzeug[slot][playerid][Stereo],
Pfahrzeug[slot][playerid][Hydraulics],Pfahrzeug[slot][playerid][FrontBumper],Pfahrzeug[slot][playerid][RearBumper],Pfahrzeug[slot][playerid][VentRight],Pfahrzeug[slot][playerid][VentLeft]);
strcat(mainquery,query);
format(query,sizeof(query),"angemeldet='%d',preis='%d',nummernschild='%s',tank='%f',km='%d',towed='%d',towedfreeprice='%d',towedreason='%s' WHERE name='%s' AND slot='%d'",
Pfahrzeug[slot][playerid][Angemeldet],Pfahrzeug[slot][playerid][Preis],Pfahrzeug[slot][playerid][Nummernschild],
vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Tank],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Kilometer],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][Abgeschleppt],vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][AbgeschlepptPreis],
vFahrzeug[Pfahrzeug[slot][playerid][Vehicle]][AbgeschlepptGrund],Pfahrzeug[slot][playerid][Besitzer],slot);
strcat(mainquery,query);
printf("%s", mainquery);
mysql_function_query(MYSQLVerbindung,mainquery,false,"","");
}
}
}