0
 lala.Parameters.Add(new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text);
 textBox15.Text = reader["@Base"].ToString();

第一行代码出现如下错误

OleDBParameterCollection 只接受非空值 OleDbparmeter 类型对象

有什么建议么?

4

1 回答 1

1

new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text是类型的赋值表达式string。所以lala.Parameters.Add(new OleDbParameter("@Base", OleDbType.SmallInt).Value = textBox15.Text);实际上是在打电话OleDbParameterCollection.Add Method (Object)https://msdn.microsoft.com/en-us/library/ms136047(v=vs.110).aspx)。而且显然string不是一个OleDbParameter对象。

正确的方法是使用局部变量:

var parameter = new OleDbParameter("@Base", OleDbType.SmallInt);
parameter.Value = textBox15.Text;
lala.Parameters.Add(parameter);
于 2015-09-04T14:38:26.523 回答