C# SQL logic error near 'date': syntax error

logic error near

今天把一个项目的数据库从MySQL改到Sqlite 调试时发生了这个错误.

我的英语极差(查到很多解决办法是英文的, 看不明白 又暴躁), 就折腾了一下. 没想到成功了

解决办法

可能是因为C# Sqlite 不能使用参数前缀”?”, 换成”@”就萌大奶了

1
2
3
4
5
SQLiteCommand cmd = Conn.Connection.CreateCommand();
cmd.CommandText = "SELECT id FROM `work` WHERE date=@date AND line=@line";
cmd.Parameters.AddWithValue("@date", date.ToLongDateString());
cmd.Parameters.AddWithValue("@line", line);
return cmd.ExecuteNonQuery() > 0;