我的程序代码如下:OleDbConnection myconn = new OleDbConnection(myconnstr);
OleDbCommand mycomm = new OleDbCommand("proc_PayUsingCard_For_PrepaySubscriber",myconn);
mycomm.CommandType = CommandType.StoredProcedure;
mycomm.Parameters.Add("@username",username.Text); OleDbParameter paramoney = new OleDbParameter("@the_money",OleDbType.Currency);
paramoney.Direction = ParameterDirection.Output;
mycomm.Parameters.Add(paramoney);
OleDbParameter parareturn = new OleDbParameter("RETURN_VALUE",OleDbType.Integer);
//估计错在这里,不知道该怎么写returnvalue
parareturn.Direction = ParameterDirection.ReturnValue;
mycomm.Parameters.Add(parareturn);myconn.Open();
mycomm.ExecuteNonQuery();在存储过程中定义了username,teh_money参数,但没有定义return参数,直接用return 100这样的形式返回值,现在我的问题是取不到return返回的值,用上面的程序报如下错误:
为过程或函数 proc_PayUsingCard_For_PrepaySubscriber 指定的参数太多请高人指点,注意是使用OleDb类,SqlClient类的我已经调试通过了,谢谢!
OleDbCommand mycomm = new OleDbCommand("proc_PayUsingCard_For_PrepaySubscriber",myconn);
mycomm.CommandType = CommandType.StoredProcedure;
mycomm.Parameters.Add("@username",username.Text); OleDbParameter paramoney = new OleDbParameter("@the_money",OleDbType.Currency);
paramoney.Direction = ParameterDirection.Output;
mycomm.Parameters.Add(paramoney);
OleDbParameter parareturn = new OleDbParameter("RETURN_VALUE",OleDbType.Integer);
//估计错在这里,不知道该怎么写returnvalue
parareturn.Direction = ParameterDirection.ReturnValue;
mycomm.Parameters.Add(parareturn);myconn.Open();
mycomm.ExecuteNonQuery();在存储过程中定义了username,teh_money参数,但没有定义return参数,直接用return 100这样的形式返回值,现在我的问题是取不到return返回的值,用上面的程序报如下错误:
为过程或函数 proc_PayUsingCard_For_PrepaySubscriber 指定的参数太多请高人指点,注意是使用OleDb类,SqlClient类的我已经调试通过了,谢谢!
-------------
应该是
OleDbParameter parareturn = new OleDbParameter("@ReturnValue",OleDbType.Integer);