我正在从一个访问数据库中拉出一个字符串字段的程序,从日期中分离出一个名称(第一个和最后一个),然后将该名称与日期分开存储在不同的访问中数据库。参数化的查询和NULL DateTime值
我已经完成了一切,除了一些日期值为空,所以我需要参数化SQL,但我一直无法弄清楚如何使参数化工作。
我已经为变量放入了虚拟值,并将它们添加到表格中。我已经删除了下面的代码片段中的其他变量,因为它们都是重复的。 os是一个包含结构数据的列表。
string sqlcmd = "INSERT INTO signatures VALUES ('" + os.QASignature + "', 'QADate = @QADATE'";
System.Data.OleDb.OleDbCommand SQLCommand = new System.Data.OleDb.OleDbCommand(sqlcmd, Connection);
using (SQLCommand)
{
SQLCommand.Parameters.Add("@QADATE", System.Data.OleDb.OleDbType.Date).Value = os.QADate;
SQLDataReader = SQLCommand.ExecuteReader();
}
后,我将它放入我的计划,我得到了以下错误执行: “‘价值’这个名字确实NT在目前情况下存在” “'System.Data.DbType'是一个'类型',但像'变量'一样使用。 – Donnachaidh 2012-07-18 16:04:07
Nevermind,它需要像“SQLCommand.Parameters.Add(新的OleDbParameter(Name =”QASignature“,DbType.String).Value = os.QASignature)”而不是你所拥有的。 – Donnachaidh 2012-07-18 16:11:48
感谢您的帮助。 – Donnachaidh 2012-07-18 16:12:01