【报错】ERR-02069: 此操作的 global_names 参数必须设置为 TRUE

发布于 2016-06-02  5.31k 次阅读


最近写了一个过程,编译通过了,但是被调用的时候报错了:

ERR-02069: 此操作的 global_names 参数必须设置为 TRUE
ERR-06512: 在 "ZJLT.MB_LODGING_CREATE_BP", line 64
ERR-06512: 在 line 1

出去了解了下,跟大家分享下:

错误原因是我在过程中用到了dblink这个东西,我在A库操作对B库的insert操作,而且在insert操作中还用到了A库自己的函数。

总意就是是不能在通过DBLINK操作远程表的DML语句中使用本地函数

翻译:

Because of a limitation, it is not possible to use a local function when doing a dml operation on a remote table

When this is attempted, the ora-2069 is raised.

解决方法:

一个就是设置global_names=true(额,其实我也不懂这什么意思);

二个就是我把用到函数的部分提前准备好,搞个变量接收了,然后把变量拿到这个DML操作中去使用,就OK了

三个就是别人说的去B库建立一个同样的过程调用。

自己斟酌用哪个吧~


生命旅客,闷头赶路总不太可取,留一刻给那可爱可敬的人,留一眼给那靓丽迷人之景,也请善待自己~