龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

Oracle存储过程的相关参数的介绍

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
以下的文章主要是涉及 Oracle 存储过程的相关参数的介绍,其中前三个函数是输入参数,后3个函数是输出参数,对Oracle存储过程的相关参数的相关实际应用不是很了解的话,以下的文章

以下的文章主要是涉及Oracle存储过程的相关参数的介绍,其中 前三个函数是输入参数,后3个函数是输出参数,对Oracle存储过程的相关参数的相关实际应用不是很了解的话,以下的文章会给你提供相关的知识。

  1. Help.cs:  
  2. public static DataTable ReturnDataTable(int index,string sql,int pageSize)  
  3. {   
  4. DataTable dt = new DataTable();  
  5. try  
  6. {   
  7. OracleParameter []param=new OracleParameter 
    []{new OracleParameter("Pindex",OracleType.Number),
    new OracleParameter("Psql",OracleType.VarChar),
    new OracleParameter("Psize",OracleType.Number),
    new OracleParameter("Pcount",OracleType.Number),
    new OracleParameter("Prowcount",OracleType.Number),
    new OracleParameter("v_cur",OracleType.Cursor)};  
  8. param[0].Value = index;  
  9. param[1].Value = sql;  
  10. param[2].Value = pageSize;  
  11. param[0].Direction = ParameterDirection.Input;  
  12. param[1].Direction = ParameterDirection.Input;  
  13. param[2].Direction = ParameterDirection.Input;  
  14. param[3].Direction = ParameterDirection.Output;  
  15. param[4].Direction = ParameterDirection.Output;  
  16. param[5].Direction = ParameterDirection.Output;   
  17. dtOracleHelper.ReturnDataTable(OracleHelper.dbCon, 
    CommandType.StoredProcedure, "JT_P_page.Pagination", param);  
  18. Help._rowCount = int.Parse(param[4].Value.ToString());   
  19. }  
  20. catch (OracleException on)  
  21. {  
  22. throw on;   
  23. }   
  24. return dt;  
  25. }   

注意一下再调用的时候 参数名必须和Oracle存储过程中的参数保持一致 否则可能会报错 例如:new OracleParameter("Pindex",OracleType.Number) 中的 Pindex 和存储过程procedure Pagination (Pindex in number 中的一样,Aspnetpage作为一个第三方控件,直接从网上下载后 在VS2005工具栏里把.dll导进去 就可以拿来用了 前台页面Update_Agent.aspx.cs里:

  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3. if (!IsPostBack)  
  4. {  
  5. BindGridView(0, "union_view", _pageSize);   
  6. AspNetPager1.RecordCount = (Help._rowCount >= 0) ? Help._rowCount : 0;   
  7. }   
  8. }  
  9. private void BindGridView(int index, string sql, int pageSize)  
  10. {  
  11. DataTable dt;  
  12. if (sql != "")  
  13. {  
  14. ViewState["IsProcedure"] = "yes";  
  15. dt = Help.ReturnDataTable(index, sql, pageSize);  
  16. }  
  17. else  
  18. {  
  19. ViewState["IsProcedure"] = "no";  
  20. dt = Help.ReturnDataTableByCondition
    (dateinput.Value, dateinput2.Value, 
    orderID.Value.Trim(), dgWay.SelectedValue, 
    AspNetPager1.CurrentPageIndex - 1, AspNetPager1.PageSize);  
  21. }  
  22. iagentView.DataSource = dt;  
  23. DataBind();  
  24. AspNetPager1.RecordCount = (sql!="")?Help._rowCount:
    Help.ReturnRows(dateinput.Value, dateinput2.Value, 
    orderID.Value.Trim(), dgWay.SelectedValue);  
  25. AspNetPager1.PageSize = pageSize;  

以上的相关内容就是对Oracle存储过程有相关参数的部分介绍,望你能有所收获。

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接