以下的文章主要是涉及Oracle存储过程的相关参数的介绍,其中前三个函数是输入参数,后3个函数是输出参数,对Oracle存储过程的相关参数的相关实际应用不是很了解的话,以下的文章会给你提供相关的知识。
Help.cs: publicstaticDataTableReturnDataTable(intindex,stringsql,intpageSize) { DataTabledt=newDataTable(); try { OracleParameter[]param=newOracleParameter []{newOracleParameter("Pindex",OracleType.Number), newOracleParameter("Psql",OracleType.VarChar), newOracleParameter("Psize",OracleType.Number), newOracleParameter("Pcount",OracleType.Number), newOracleParameter("Prowcount",OracleType.Number), newOracleParameter("v_cur",OracleType.Cursor)}; param[0].Value=index; param[1].Value=sql; param[2].Value=pageSize; param[0].Direction=ParameterDirection.Input; param[1].Direction=ParameterDirection.Input; param[2].Direction=ParameterDirection.Input; param[3].Direction=ParameterDirection.Output; param[4].Direction=ParameterDirection.Output; param[5].Direction=ParameterDirection.Output; dt=OracleHelper.ReturnDataTable(OracleHelper.dbCon, CommandType.StoredProcedure,"JT_P_page.Pagination",param); Help._rowCount=int.Parse(param[4].Value.ToString()); } catch(OracleExceptionon) { throwon; } returndt; }
注意一下再调用的时候 参数名必须和Oracle存储过程中的参数保持一致 否则可能会报错 例如:new OracleParameter("Pindex",OracleType.Number) 中的 Pindex 和存储过程procedure Pagination (Pindex in number 中的一样,Aspnetpage作为一个第三方控件,直接从网上下载后 在VS2005工具栏里把.dll导进去 就可以拿来用了 前台页面Update_Agent.aspx.cs里:
protectedvoidPage_Load(objectsender,EventArgse) { if(!IsPostBack) { BindGridView(0,"union_view",_pageSize); AspNetPager1.RecordCount=(Help._rowCount>=0)?Help._rowCount:0; } } privatevoidBindGridView(intindex,stringsql,intpageSize) { DataTabledt; if(sql!="") { ViewState["IsProcedure"]="yes"; dt=Help.ReturnDataTable(index,sql,pageSize); } else { ViewState["IsProcedure"]="no"; dt=Help.ReturnDataTableByCondition (dateinput.Value,dateinput2.Value, orderID.Value.Trim(),dgWay.SelectedValue, AspNetPager1.CurrentPageIndex-1,AspNetPager1.PageSize); } iagentView.DataSource=dt; DataBind(); AspNetPager1.RecordCount=(sql!="")?Help._rowCount: Help.ReturnRows(dateinput.Value,dateinput2.Value, orderID.Value.Trim(),dgWay.SelectedValue); AspNetPager1.PageSize=pageSize;
相关文章
标签:Oracle