现在在做一个项目,C#+Oracle,用的是vs2005,.net2.0的OraceClient.dll,Oracle10g
我想将表,DataTable作为一个参数出入数据库进行批量的处理,因为从数据库中读出的数据在内存中做了很多的处理,需要批量的更新数据库。
我现在不明白的两点:
第一,传入Oracle存储过程中的时候,在C#代码中,怎么写传入的类型?OracleType.Cursor类型吗?还是别的什么类型?
第二,在存储过程中,怎么定义这个表的类型,怎么进行操作这个表?谢谢!
我想将表,DataTable作为一个参数出入数据库进行批量的处理,因为从数据库中读出的数据在内存中做了很多的处理,需要批量的更新数据库。
我现在不明白的两点:
第一,传入Oracle存储过程中的时候,在C#代码中,怎么写传入的类型?OracleType.Cursor类型吗?还是别的什么类型?
第二,在存储过程中,怎么定义这个表的类型,怎么进行操作这个表?谢谢!
解决方案 »
- ORACLE 把SYSBASE数据库中的数据导入到ORACLE数据库出现乱码。。
- Oracle某用户可以操作哪些表空间?
- oracle 在xp系统下的安装问题,请高手指导下!!!跪求!!!
- user 用户 无法取到数据
- oracle服务重启或监听重启,出现 ora12514
- 怎么让oracle在开机时不要自动启动
- Oracle9i和Oracle8同时安装的一个问题(多谢指教)
- 有点麻烦,请问如何提起字符串中的特殊字符
- 急问~~~~为什么我不能登陆SQL*Plus?系统提示 ORA-12560:TNS:协议适配器错误
- 有没有大神知道怎么查当前活动的sql已经执行了多久。。
- 如何读取某一天二十四小时的数据
- 有关oracle instantclient 创建odbc的问题
type v_tcursor is ref cursor;
v_cursor v_tcursor;
begin
v_sql:='select * from '||p_tname;
open v_cursor for v_sql;
end;
先把数据存入一个临时表中(insert操作)
然后再存储过程中操作这个临时表的数据实现方案2
在db中建立一个数组类型(type),每个数组对应你的表的一列数据,这样你才能够将整个表数据传入存储过程处理。在这里你最好控制好你可护短的表的记录数,可能会一样性能。如果数据量大,你最好采用批处理方式。以上2种实现方式仅供参考。