Oracle中scott用户下创建存储过程: (注:从9i开始有了sys_refcursor这种类型,在以前的Oracle版本中需要使用REF CURSOR,并且还需放在一个程序包中) create or replace procedure sp_getdept (result out sys_refcursor) as begin open result for select * from dept; end; / =================================================== .net环境下(用的WINDOWS程序,WEB基本相同;环境为VS2005) ==记着先添加引用System.Data.OracleClient using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Data.OracleClient; namespace WindowsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { OracleConnection con = new OracleConnection("server=orcl;uid=scott;pwd=tiger"); OracleCommand cmd = new OracleCommand("sp_getdept",con); cmd.CommandType = CommandType.StoredProcedure; OracleParameter p1 = new OracleParameter("result", OracleType.Cursor); p1.Direction = System.Data.ParameterDirection.Output; cmd.Parameters.Add(p1); OracleDataAdapter da = new OracleDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); this.dataGridView1.DataSource = ds.Tables[0]; } } }
参考资料:baidu