您的位置:首页 > 数据库 > Oracle

.net调用带游标输出的oracle存储过程

2013-01-24 17:39 405 查看
参数配置

OracleParameter[] paras=
{
new OracleParameter("p_stdate",OracleType.DateTime),
new OracleParameter("p_eddate",OracleType.DateTime),
new OracleParameter("p_pinx",OracleType.VarChar),
new OracleParameter("p_cursor",OracleType.Cursor)
};
paras[0].Value=DateTime.Parse(stdate).AddYears(-1);
paras[1].Value = DateTime.Parse(eddate).AddYears(-1);
paras[2].Value=pxnum;
paras[0].Direction = ParameterDirection.Input;
paras[1].Direction = ParameterDirection.Input;
paras[2].Direction = ParameterDirection.Input;
paras[3].Direction = ParameterDirection.Output;
//paras[3].IsNullable = true;
DataTable dt = ohr.QueryBySqlProc("GetNdxse",paras);


转载的代码

  Database db = DatabaseFactory.CreateDatabase("oraserver");
  string sqlCommand = "Static_UserPackage.STATIC_USER_SelectAll";
  Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleCommandWrapper dbCommandWrapper =(Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleCommandWrapper)db.GetStoredProcCommandWrapper(sqlCommand);
  dbCommandWrapper.AddParameter("cur_OUT_f", OracleType.Cursor, 0, ParameterDirection.Output, true, 0, 0, String.Empty, DataRowVersion.Default, Convert.DBNull);
  dbCommandWrapper.AddParameter("cur_OUT_g", OracleType.Cursor, 0, ParameterDirection.Output, true, 0, 0, String.Empty, DataRowVersion.Default, Convert.DBNull);
  DataSet dsCustomers = db.ExecuteDataSet(dbCommandWrapper);
  DataGrid1.DataSource=dsCustomers.Tables[0];
  DataGrid1.DataBind();
  DataGrid2.DataSource=dsCustomers.Tables[1];
  DataGrid2.DataBind();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: