Anfänger Probleme mit Sqlite und Tables, Database query failed

  • Hallo,
    ich bin seit kurzem zu MTA umgestiegen, also von Pawn zu Lua. Nun bin ich bereits durch die Materia gegangen, konnte bisher jedes Problem selbst lösen, außer das.
    ERROR: Database query failed: near "UPDATE": syntax error (UPDATE players SET money=?, Kills=?, Deaths=? WHERE NAME=?)
    Es soll ein eigenes Accountsystem sein, ist bereits fertig. Man kann sich einloggen und registrieren. Nur werden die Statistiken nicht gespeichert, wenn man den Server verlässt, weil diese Query nicht funktioniert..
    Ausschnitt:

    Code
    executeSQLQuery("UPDATE players SET Money=?, Kills=?, Deaths=? WHERE Name=?", tonumber(gPlayerMoney[username]), tonumber(gPlayerKills[username]), tonumber(gPlayerDeaths[username]), username)

    Die Query an sich ist doch richtig oder? Es scheint es liegt an den Tables. Ich bin sonst immer mit Arrays umgegangen, Tables sind für mich völlig neu. Also ist es sehr warscheinlich, dass ich mit den Tables was falsches gemacht habe:
    Ausschnitte

    Tables werden initialisiert, sind also noch leer

    Code
    gPlayerLoggedIn = { }
    gPlayerMoney = { }
    gPlayerScore = { }
    gPlayerKills = { }
    gPlayerDeaths = { }
    gPlayerPassword = { }

    Beim joinen werden die über den Spielernamen gesetzt:

    Code
    username = getClientName(source)
    gPlayerLoggedIn[username] = 0
    	gPlayerKills[username] = 0
    	gPlayerDeaths[username] = 0
    	gPlayerMoney[username] = 0

    Sind keys über die Spielernamen sinnvoll? Habe ich es richtig gemacht?
    Und sind eigentlich die Funktionen außer executeSQLQuery auch gegen SQL-Injection geschützt?

  • Dieses Thema enthält 2 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind, bitte registrieren Sie sich oder melden Sie sich an um diese lesen zu können.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!