【发布时间】:2020-10-25 11:19:52
【问题描述】:
我无法将 NULL 值插入数据库中的 Date 列,因为我需要使用字符串变量。
插入语句:
string insertQuery = "INSERT INTO PersonelListesi (id, ssk_tarih) VALUES(1,'" + sskTarihi + "')";
工作变量示例:
string sskTarihi = "20201212";
不正确的变量示例(我尝试过):
sskTarihi = "NULL";
System.Data.SqlClient.SqlException: '从字符串转换日期和/或时间时转换失败。'
sskTarihi = "'NULL'";
System.Data.SqlClient.SqlException: '关键字'NULL'附近的语法不正确
sskTarihi = "\"'NULL'\"";
System.Data.SqlClient.SqlException: '关键字'NULL'附近的语法不正确
sskTarihi = "\"NULL\"";
System.Data.SqlClient.SqlException: '从字符串转换日期和/或时间时转换失败。'
sskTarihi = "\'NULL\'";
System.Data.SqlClient.SqlException: '关键字'NULL'附近的语法不正确
sskTarihi = "\"\'NULL\'\"";
System.Data.SqlClient.SqlException: '关键字'NULL'附近的语法不正确
我希望你明白我的意思和我需要的。我很感激帮助。提前感谢您的回答。 :)
【问题讨论】:
-
不要费心转义引号;只需use parameters。对于
NULL,指定参数值DBNull.Value。 -
应避免字符串连接,以免语句容易被注入。
-
@BarbarosÖzhan 和 Dan,谢谢你们。
标签: c# sql-server sql-insert