关于往远程表中插入数据

[复制链接]
查看11 | 回复5 | 2011-11-1 16:24:51 | 显示全部楼层 |阅读模式
现在有db1和db2,已经建了dblink,两个数据库上分别有表a和b,现在要将a的数据插入到b中,相关用户权限都赋好了。
现在的问题是:通过游标用BULK COLLECT批量从a取数据,然后插入b的时候,一直报错:
ORA-01400: 无法将 NULL 插入 ("user"."b"."column")
ORA-02063: preceding line from dblink。
但是,直接用insert into user.b@dblink (column) select column from a;这样是没有问题的,不知道各位有没有碰到这样的问题,是如何解决的?

回复

使用道具 举报

千问 | 2011-11-1 16:24:51 | 显示全部楼层
补充下,数据库是10g。
回复

使用道具 举报

千问 | 2011-11-1 16:24:51 | 显示全部楼层
ORA-01400: 无法将 NULL 插入 ("user"."b"."column")
有NULL??b.column有NOT NULL约束?
要么就是BUG,记得以前碰到过
回复

使用道具 举报

千问 | 2011-11-1 16:24:51 | 显示全部楼层
从a表查出来的值是没有null的,我也估计是bug,只是不确定。
回复

使用道具 举报

千问 | 2011-11-1 16:24:51 | 显示全部楼层
建议调试一下代码。
Handling FORALL Exceptions with the %BULK_EXCEPTIONS Attribute

回复

使用道具 举报

千问 | 2011-11-1 16:24:51 | 显示全部楼层
能否看完整的代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行