高分求解-oracle 对executeBatch的支持?

zzhangwa 2010-08-30 11:33:59
oracle 对executeBatch的支持
各位大虾,请问如何让Oracle在对executeBatch处理时一条SQL出错还可以执行后面的语句呢?
...全文
191 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzhangwa 2010-08-31
  • 打赏
  • 举报
回复
各位,帮帮忙啊
zzhangwa 2010-08-30
  • 打赏
  • 举报
回复
谢谢楼上的指点,如果在JDBC中又如何使用呢?
hyee 2010-08-30
  • 打赏
  • 举报
回复
简单说是使用 LOG ERRORS INTO 语法。下面是demo

--创建用来记录错误的临时表
create global temporary table ZT_ERRLOGS$
(
ora_err_number$ NUMBER,
ora_err_mesg$ VARCHAR2(2000),
ora_err_rowid$ ROWID,
ora_err_optyp$ VARCHAR2(2),
ora_err_tag$ VARCHAR2(2000)
)
on commit preserve rows;
--创建测试表
create table t(x number(10));
--开始测试
BEGIN
FOR i IN 1 .. 100 LOOP
INSERT INTO t
VALUES
(dbms_random.value(1, 1e15)) LOG ERRORS INTO ZT_ERRLOGS$
(i) REJECT LIMIT 1000000;
END LOOP;
END;
/
--查看错误信息,可省略
SQL> SELECT * FROM ZT_ERRLOGS$ where rownum<10;
....
1438 ORA-01438: 值大于为此列指定的允许精度 I 1
1438 ORA-01438: 值大于为此列指定的允许精度 I 2
1438 ORA-01438: 值大于为此列指定的允许精度 I 3
1438 ORA-01438: 值大于为此列指定的允许精度 I 4
......

3,494

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧