SQLite Fehler

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 Com,


    In meine SQLite Datenbank wird einfach nichts eingetragen:


    Struktur:


    stock CheckSQLiteDatabase(id,DB:db)
    {
    if(id == DATABASE_SET) { db_free_result(db_query(db,"CREATE TABLE IF NOT EXISTS `settings` (`id` int(11),`Datenbankhost` varchar(64) NOT NULL,`Datenbankuser` varchar(64) NOT NULL,`Datenbankpass` varchar(64) NOT NULL,`Datenbank` varchar(64) NOT NULL);")); }
    return 1;
    }


    new data[4][16],_query[64], DBResult:res, rows, _string[128];
    res = db_query(Database[0],"SELECT * FROM `settings`");
    rows = db_num_rows(res);
    sscanf(inputtext, "p<|>s[16]s[16]s[16]s[16]", data[0], data[1], data[2], data[3]);
    printf("%s,%s",data[0],data[1]);
    format(_query,sizeof(_query),"INSERT INTO `settings` (`id`,`Datenbankhost`,`Datenbankuser`,`Datenbankpass`,`Datenbank`) VALUES ('%i','%s','%s','%s','%s');",rows+1,data[0],data[1],data[2],data[3]);
    db_free_result(db_query(Database[0],_query));
    db_free_result(res);
    format(_string,sizeof(_string),"Folgende Datenbank wurde hinzugefügt:\n\nDatenbankreihe: %iHost:\t%s\nUser:\t%s\nPass:\tVerschlüsselt\nDatenbank:\t%s",rows,data[0],data[1],data[2],data[3]);
    ShowPlayerDialog(playerid,DIALOG_DB_ADD_SC,DIALOG_STYLE_MSGBOX,"Ausgeführte Daten:",string,"Zurück","Schliessen");


    Da wird allerdings nichts in die Datenbank eingetragen.


    Hilfe wäre von Beavis: nicht schlecht da ich es nach sienem Tuutorial gemacht habe

  • Schalte doch mal dein Hirn ein
    _query[64]
    "INSERT INTO `settings` (`id`,`Datenbankhost`,`Datenbankuser`,`Datenbankpass`,`Datenbank`) VALUES ('%i','%s','%s','%s','%s');"


    allein data[4*16] ergibt 56 und der rest das sind mehr als 64 Zeichen. Also kommt dein query nicht im ganzen stück an und kann nicht richtig ausgeführt werden.