交换程序将外网数据交换到内网,内外网表名和结构相同,相同的程序开发环境数据库可正常执行。在生产环境却出现如此错误。交换程序如下:
                 insert into APP_CORP_CORPINFO_NEW2
                  select * from APP_CORP_CORPINFO_NEW2@web_out where CORP_ID=1000000059; 报
ORA-02068:following severe error form WEB_OUT
ORA-03113:end-of-file on communication channelAPP_CORP_CORPINFO_NEW2表结构如下:create table APP_CORP_CORPINFO_NEW2
(
  CORP_ID        NUMBER(10) default 0 not null,
  ORG_CODE       VARCHAR2(40) not null,
  CORP_NAME      VARCHAR2(100) not null,
  LIC_REG_NO     VARCHAR2(40) not null,
  LIC_NO         VARCHAR2(40) not null,
  REG_ADDR       VARCHAR2(500) not null,
  REG_POSTCODE   VARCHAR2(12) not null,
  ADDRESS        VARCHAR2(200) not null,
  POSTCODE       VARCHAR2(12) not null,
  EC_TYPE        NUMBER(10) not null,
  CORP_SPEC_TYPE NUMBER(10) not null,
  CORP_TYPE      NUMBER(10) not null,
  FORM_DATE      DATE not null,
  CONTACT_PERS   VARCHAR2(50) not null,
  CONTACT_TEL    VARCHAR2(50) not null,
  FAX            VARCHAR2(20) not null,
  WEBSITE        VARCHAR2(200),
  EMAIL          VARCHAR2(100) not null,
  BANK           VARCHAR2(100) not null,
  ACCOUNT        VARCHAR2(40) not null,
  CORP_INTRO     VARCHAR2(2000),
  CORP_ORG_CHART BLOB,
  CORP_AUTHEN    VARCHAR2(500),
  REG_CAP        NUMBER(18,6) not null,
  CURRENCY       NUMBER(10) not null,
  TAG_TIME       DATE not null,
  TAG_DEL        NUMBER(1) default 0 not null,
  ORIG_CORP_ID   VARCHAR2(30) not null,
  ORIG_NAME      VARCHAR2(100),
  SUB_CONST_DEPT NUMBER(10) not null,
  CORP_RULE      CLOB,
  USERNAME       VARCHAR2(200),
  ISO_ENVI_NO    VARCHAR2(100),
  ISO_QUAL_NO    VARCHAR2(100),
  ISO_OTHER_NO   VARCHAR2(100),
  CORP_PIC_CHART BLOB
)在线求解,谢谢。

解决方案 »

  1.   

    一,最好不要大量使用dblink方式实时远程取数据,有大概如下几个缺点:
    1,频繁对远程数据库创建连接,释放连接会有较大开销,特别是OLTP类数据库。
    2,此类远程dblink连接session,如本地session不退出或手动释放,此类session是不会及时自动释放的。大量耗用远程数据库资源。
    3,占用网络带宽
    4,触发bug,此类bug很多
    此类应用根绝实际需求可以用物化视图,触发器等方式替代.
    注:切忌使用dblink嵌套dblink的访问方式,性能会非常糟糕,而且不稳定。二,使用ALTER SESSION CLOSE DATABASE LINK dblink_name;语句来手动关闭远程dblink session.
    在使用此语句前,切忌先执行commit;否则报错ORA-02080或者不能达到预期效果。
      

  2.   

    不好意思,请问怎么查看trace文件?
    回楼上,本程序隔一段时间才执行一次,