c#中利用pl/sql匿名块和游标获取多个结果集
2005-12-20 11:21
357 查看
1.创建测试表并插入数据:
SQL> create table TESTTAB1
2 (
3 NAME1 VARCHAR2(10)
4 );
表被创建
SQL>
SQL> create table testtab2
2 (
3 name2 varchar2(10)
4 )
5 ;
表被创建
SQL> insert into testtab1
values('testtab1');
1 行
已插入
SQL> commit;
提交完成
SQL> insert into testtab2
values('testtab2');
1 行
已插入
SQL> commit;
提交完成
SQL>
2.验证插入的数据:
SQL> select * from testtab1;
NAME1
----------
testtab1
SQL> select * from testtab2;
NAME2
----------
testtab2
SQL>
3.主要的c# 代码:
using ORAC = System.Data.OracleClient;
private void button1_Click(object sender, System.EventArgs e)
{
try
{
string
str_Sql = @"begin open :cur1 for select * from testtab1;open :cur2 for
select * from testtab2;end;";
ORAC.OracleCommand cmd = new ORAC.OracleCommand(str_Sql,this.oracleConnection1);
ORAC.OracleParameter parm1 = new
ORAC.OracleParameter("cur1",ORAC.OracleType.Cursor);
parm1.Direction =
ParameterDirection.Output;
cmd.Parameters.Add(parm1);
ORAC.OracleParameter parm2 = new ORAC.OracleParameter("cur2",ORAC.OracleType.Cursor);
parm2.Direction =
ParameterDirection.Output;
cmd.Parameters.Add(parm2);
ORAC.OracleDataAdapter da = new ORAC.OracleDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
this.dataGrid1.DataSource = ds.Tables[0].DefaultView;
this.dataGrid2.DataSource
= ds.Tables[1].DefaultView;
}
catch(Exception
ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.oracleConnection1.Close();
}
}
SQL> create table TESTTAB1
2 (
3 NAME1 VARCHAR2(10)
4 );
表被创建
SQL>
SQL> create table testtab2
2 (
3 name2 varchar2(10)
4 )
5 ;
表被创建
SQL> insert into testtab1
values('testtab1');
1 行
已插入
SQL> commit;
提交完成
SQL> insert into testtab2
values('testtab2');
1 行
已插入
SQL> commit;
提交完成
SQL>
2.验证插入的数据:
SQL> select * from testtab1;
NAME1
----------
testtab1
SQL> select * from testtab2;
NAME2
----------
testtab2
SQL>
3.主要的c# 代码:
using ORAC = System.Data.OracleClient;
private void button1_Click(object sender, System.EventArgs e)
{
try
{
string
str_Sql = @"begin open :cur1 for select * from testtab1;open :cur2 for
select * from testtab2;end;";
ORAC.OracleCommand cmd = new ORAC.OracleCommand(str_Sql,this.oracleConnection1);
ORAC.OracleParameter parm1 = new
ORAC.OracleParameter("cur1",ORAC.OracleType.Cursor);
parm1.Direction =
ParameterDirection.Output;
cmd.Parameters.Add(parm1);
ORAC.OracleParameter parm2 = new ORAC.OracleParameter("cur2",ORAC.OracleType.Cursor);
parm2.Direction =
ParameterDirection.Output;
cmd.Parameters.Add(parm2);
ORAC.OracleDataAdapter da = new ORAC.OracleDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
this.dataGrid1.DataSource = ds.Tables[0].DefaultView;
this.dataGrid2.DataSource
= ds.Tables[1].DefaultView;
}
catch(Exception
ex)
{
MessageBox.Show(ex.Message);
}
finally
{
this.oracleConnection1.Close();
}
}
相关文章推荐
- c#中里有pl/sql匿名块和绑定变量在执行insert后获取当前序列值
- c#里用pl/sql匿名块和绑定变量在执行insert后获取当前序列值
- Oracle Procedure (PL/SQL) 实践归纳(3)之在Java利用Procedure获取结果集
- Ch5 PL/SQL使用游标获取数据
- 在PL/SQL使用游标获取数据及动态SQL
- sql 利用游标遍历一个查询结果
- 显示游标获取数据-PL/SQL
- [Oracle]在PL/SQL中更改数据和使用游标获取数据
- Oracle学习笔记——在PL/SQL使用游标获取数据
- [转]sql利用游标循环,遍历表循环结果集
- c#对PL/SQL查询结果列复制的结果生成指定格式
- pl/sql用游标获取表的每一行
- C#利用反射动态调用DLL并返回结果,和获取程序集的信息
- PL/SQL与测试游标返回结果集
- PL/SQl使用游标获取数据
- c#对PL/SQL查询结果列复制的结果生成指定格式
- Oracle PL/SQL开发基础(第二十六弹:游标变量)
- 尚学堂马士兵Oracle学习笔记之六:PL/SQL中的游标,存储过程,触发器
- c#.NET 调用命令控制台 并获取执行结果
- 【Oracle】PL/SQL 显式游标、隐式游标、动态游标