这个是我编写的一个类其中的一个函数,就是用来返回主键的值,proid是主键,不知道错在哪里,总是提示
System.Data.OleDb.OleDbException: 至少一个参数没有被指定值。
public static int returnproid(string name)
{
OleDbConnection con = db.ConnectionCreate();
con.Open();
OleDbCommand cmd = new OleDbCommand("select proid from products where proname=" + name, con);
int id = Convert.ToInt32(cmd.ExecuteScalar());
return id;
}
public static int returnproid(string name)
{
OleDbConnection con = db.ConnectionCreate();
con.Open();
OleDbCommand cmd = new OleDbCommand("select top 1 proid from products where proname=" + name, con);
OleDbDataReader sdr = cmd.ExecuteReader();
sdr.Read();
int id = Convert.ToInt32(sdr[0]);
return id;
}
用这段代码查找,遇到一个非常奇怪的问题,当我在这段代码设置了断点,一条一条的执行的时候,程序能够正常返回值,但是我不设置断点,程序就会报错
至少一个参数没有被指定值。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。