因此,我尝试使用 SQLite3 将新行插入到我的数据库中,但由于某种原因,我遇到了 SQL 逻辑错误。
Database dbObject = new Database();
string query = "INSERT INTO info ('firstName, lastName, email') VALUES (@firstName, @lastName, @email";
SQLiteCommand myCommand = new SQLiteCommand(query, dbObject.Connection); //Opens chain of commands
dbObject.OpenConnection();
myCommand.Parameters.AddWithValue("@firsName", "blank name");
myCommand.Parameters.AddWithValue("@lastName", "blank last name");
myCommand.Parameters.AddWithValue("@email", "[email protected]");
var result = myCommand.ExecuteNonQuery();
dbObject.CloseConnection();
Console.WriteLine("Rows added: {0}", result);
Console.ReadKey();
有人可以告诉我我做错了什么吗?谢谢!
您的查询缺少末尾的括号(在
@email
之后)。
此外,我不确定您在
firstName
和email
之间添加的单引号。我认为它们应该被删除。
"INSERT INTO info (firstName, lastName, email) VALUES (@firstName, @lastName, @email)";
作为与错误无关的旁注,您还需要处置 SQLiteCommand 类,因为它本身不是处置的。您可以使用 using 语句来完成。
您的请求有一些错误。就像:“从订单中选择*”:ORDER - sqlite 中的关键字!