我在一个触发器中写了一个
insert into tmp select * from testblob@SALINK;
其中要从另一个数据库中SELECT一个大对象INSERT到本数据库中,表结构没问题!可是在保存这个触发器时,会报“ORA-03113: 通信通道的文件结束”
把上边那句删了就没问题了,这是什么原因?那位高手能指点一下!

解决方案 »

  1.   

    看来挺难的~  看看... :(ORA-03113 end-of-file on communication channel
    Cause: An unexpected end-of-file was processed on the communication channel. The problem could not be handled by the Net8, two task, software. This message could occur if the shadow two-task process associated with a Net8 connect has terminated abnormally, or if there is a physical failure of the interprocess communication vehicle, that is, the network or server machine went down. Action: If this message occurs during a connection attempt, check the setup files for the appropriate Net8 driver and confirm Net8 software is correctly installed on the server. If the message occurs after a connection is well established, and the error is not due to a physical failure, check if a trace file was generated on the server at failure time. Existence of a trace file may suggest an Oracle internal error that requires the assistance of customer support 
      

  2.   

    1>.检查是否有服进程不正常死机,可从alert.log得知   2>.检查sql*Net Driver是否连接到ORACLE可执行程序   3>.检查服务器网络是否正常,如网络不通或不稳定等   4>.检查同一个网上是否有两个同样名字的节点   5>.检查同一个网上是否有重复的IP地址
      

  3.   

    这两个数据库是我在同一台机器上建立的!我在SQL PLUS中直接写
    insert into tmp select * from testblob@SALINK;
    这条语句执行没问题,可是把它放到触发器中就会报错,不知为什么?
      

  4.   

    给你提供一些资料:
    http://www.itpub.net/showthread.php?s=26de437de73455410409f3faf50e3621&threadid=124145