【发布时间】:2010-03-09 08:55:25
【问题描述】:
我有一个通过 OleDb 执行的 SQL 语句,该语句是这样的:
INSERT INTO mytable (name, dept) VALUES (@name, @dept);
我正在像这样向 OleDbCommand 添加参数:
OleDbCommand Command = new OleDbCommand();
Command.Connection = Connection;
OleDbParameter Parameter1 = new OleDbParameter();
Parameter1.OleDbType = OleDbType.VarChar;
Parameter1.ParamterName = "@name";
Parameter1.Value = "Bob";
OleDbParameter Parameter2 = new OleDbParameter();
Parameter2.OleDbType = OleDbType.VarChar;
Parameter2.ParamterName = "@dept";
Parameter2.Value = "ADept";
Command.Parameters.Add(Parameter1);
Command.Parameters.Add(Parameter2);
我遇到的问题是,如果我将参数添加到相反的命令中,那么列会填充错误的值(即名称在 dept 列中,反之亦然)
Command.Parameters.Add(Parameter2);
Command.Parameters.Add(Parameter1);
我的问题是,如果参数值只是按照添加命令的顺序插入到表中,那么参数名称的意义何在?参数名称似乎是多余的?
【问题讨论】:
标签: c# .net oledb oledbcommand oledbparameter