日期:2014-05-18  浏览次数:21482 次

IDataParameter[] parameter
 

 string strCon2 = ConfigurationManager.ConnectionStrings["databaseConnectionString"].ConnectionString;
  SqlConnection sqlCon2 = new SqlConnection(strCon2);
  SqlCommand sqlCom2 = new SqlCommand();
  sqlCom2.Connection = sqlCon2;
  sqlCom2.CommandType = CommandType.StoredProcedure;
  sqlCom2.CommandText = "sp_Table1_rowcount";
  IDataParameter[] parameter ={
new SqlParameter("rval",SqlDbType.Int,4)
};
//将参数类型设置为返回值类型
parameter[0].Direction = ParameterDirection.ReturnValue;
  //添加参数
  sqlCom2.Parameters.Add(parameter[0]);
  sqlCon2.Open();


 parameter[0]是什么。是不是{}中new的rval 。
 IDataParameter[] parameter ={
  new SqlParameter("rval",SqlDbType.Int,4)
  };
中的 new SqlParameter("rval",SqlDbType.Int,4)什么用。

------解决方案--------------------
第一个对应Oracle 存储过程的参数名
第二个对应Oracle 存储过程的参数类型
第三个对应Oracle 存储过程的参数大小
------解决方案--------------------
其实就是设置待返回的参数而已,parameter[0]就是第一个参数啊。IDataParameter是个数据参数的接口
new SqlParameter("rval",SqlDbType.Int,4) rval就是参数的名字,SqlDbType.Int参数的类型,4表示长度
我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html