OleDbParameters和参数名称

我有一条通过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);

我的问题是,如果仅按添加命令的顺序将参数值插入表中,参数名称的意义是什么?参数名称似乎多余吗?

回答:

参数名称在SQL支持系统中是通用的(即,不是特定于OleDb的)。几乎只有OleDb /

Odbc不使用它们。它们之所以存在,是因为OleDb是通用基类的特定实现。

以上是 OleDbParameters和参数名称 的全部内容, 来源链接: utcz.com/qa/417786.html

回到顶部