[错误] SQL logic error near "date": syntax error
阅读原文时间:2023年09月07日阅读:2

问题的来源

今天把一个项目的数据库从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;