[错误] SQL logic error near "date": syntax error

时间:2021-10-10 01:34:55

问题的来源

[错误] SQL logic error near "date": syntax error

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

百度又看不懂英文(很多是国外发的), 就折腾了一下

原因

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

            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;