ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORA-02069

ORA-02069

原创 Linux操作系统 作者:herbertyqh 时间:2012-11-22 16:10:55 0 删除 编辑
今天同事那边发来这段错误代码要我帮忙看看;
其实前段时间出过同样的问题了;
在网上查询的时候有说是DBLINK创建的有问题
创建dblink时名称要起成和远程数据库实例sid相同;
还有说是权限问题的;  但均没有解决这个问题;
错误语句示例如下(转载,问题描述与解决一样):
INSERT INTO a@ora156
  SELECT seq_sysalert_id.NEXTVAL,
         '15098727782' AS MSISDN,
         '0' AS MSTYPE,
         'sfafs' AS MSMESSAGE,
         '0' AS MSFLAG
    FROM DUAL;

抛出错误码为ORA-02069 ,错误解释如下:ORA-02069 global_names parameter must be set to TRUE for this operation
Cause: A remote mapping of the statement is required but cannot be achieved because GLOBAL_NAMES should be set to TRUE for it to be achieved.
Action: Issue ALTER SESSION SET GLOBAL_NAMES = TRUE if possible

实际引发错误的原因并非如此,执行以上语句没有作用,而是因为插入的表是远程数据库的表,

而序列不是远程数据库的序列,这时需要将序列后面也添加远程标识,修改为如下即可:

INSERT INTO a@ora156
  SELECT seq_sysalert_id.NEXTVAL@ora156,
         '15098727782' AS MSISDN,
         '0' AS MSTYPE,
         'sfafs' AS MSMESSAGE,
         '0' AS MSFLAG
    FROM DUAL;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25057232/viewspace-749757/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-11-21

  • 博文量
    40
  • 访问量
    34204