Frage

Im gerade SQLite lernen, und ich kann meine Parameter nicht richtig bekommen in den Befehl zu kompilieren. Wenn ich den folgenden Code ausführen:

this.command.CommandText = "INSERT INTO [StringData] VALUE (?,?)";

this.data = new SQLiteParameter();
this.byteIndex = new SQLiteParameter();

this.command.Parameters.Add(this.data);
this.command.Parameters.Add(this.byteIndex);

this.data.Value = data.Data;
this.byteIndex.Value = data.ByteIndex;

this.command.ExecuteNonQuery();

Ich erhalte eine SQLite Ausnahme. Nach der Inspektion Command ich feststellen, dass alles, was ich tue nicht richtig die Parameter hinzu: INSERT INTO [StringData] VALUE (?,?)

Alle Ideen, was ich fehle?

Danke

War es hilfreich?

Lösung

Versuchen VALUES statt VALUE.

Andere Tipps

Versuchen Sie, einen anderen Ansatz, Ihre Felder in der Abfrage zu benennen und die Parameter in der Abfrage zu benennen:

this.command.CommandText = "INSERT INTO StringData (field1, field2) VALUES(@param1, @param2)";
this.command.CommandType = CommandType.Text;
this.command.Parameters.Add(new SQLiteParameter("@param1", data.Data));
this.command.Parameters.Add(new SQLiteParameter("@param2", data.ByteIndex));
...
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top