MySQL - String möchte nicht in Tabelle rein >.<

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey Breadfish,


    ich kann es mir nicht erklären, wieso mein String nicht in die Tabelle möchte, aber vielleicht könnt ihr es mir sagen.
    Vielleicht etwas falsches am Code?


    ~ Code:


    new query[64];
    mysql_real_escape_string(AccountInfo[playerid][pAccSicherheitsfrage], AccountInfo[playerid][pAccSicherheitsfrage]);
    format(query, 64, "UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du?' WHERE `spieleraccounts` = '%s'",AccountInfo[playerid][pAccName]);
    mysql_query(query);


    Hoffe mir kann wer helfen.

  • [15:31:18] CMySQLHandler::Query(UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du) - An error has occured. (Error ID: 1064, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Wie heißt du' at line 1)


    Das ist der Error, den soll man wie verstehen? :D

  • Ja, das sagte ich doch bereits. Der Query hat mehr als 64 Zeichen. Stell die Größe auf 256.


    Also so:
    new query[256];
    mysql_real_escape_string(AccountInfo[playerid][pAccSicherheitsfrage], AccountInfo[playerid][pAccSicherheitsfrage]);
    format(query, sizeof(query), "UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du?' WHERE `spieleraccounts` = '%s'",AccountInfo[playerid][pAccName]);
    mysql_query(query);


    @Blax's:

  • Was zum Teufel ist das?!
    format(query, 64, "UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du?' WHERE `spieleraccounts` = '%s'"
    Du Updatest spieleraccounts und deine Where anweisung ist auch spieleraccounts?


    Ich denke mal das du da Name hinschreiben solltest, da es das Feld Spieleraccounts wohl nicht geben wird

    All in all it's just another brick in the wall


  • Was zum Teufel ist das?!
    format(query, 64, "UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du?' WHERE `spieleraccounts` = '%s'"
    Du Updatest spieleraccounts und deine Where anweisung ist auch spieleraccounts?


    Ich denke mal das du da Name hinschreiben solltest, da es das Feld Spieleraccounts wohl nicht geben wird


    Okay. :D
    So habe es mal geändert, Beavis. Jedoch kommt leider immer noch der Error.

    CMySQLHandler::Query(UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du) - An error has occured. (Error ID: 1064, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''Wie heißt du' at line 1)


  • PAWN Quelltext
    new query[64];
    mysql_real_escape_string(AccountInfo[playerid][pAccSicherheitsfrage], AccountInfo[playerid][pAccSicherheitsfrage]);
    format(query, 64, "UPDATE `spieleraccounts` SET `Sicherheitsfrage` = 'Wie heißt du?' WHERE `Name` = '%s'",AccountInfo[playerid][pAccName]);
    mysql_query(query);


    Sinn? Bekomme immernoch den selben Errorcode X(