如何在 触发器 中 操作 BLOB 列 ?
如何在   触发器   中   操作   BLOB   列   ?   
 以下是我写的触发器   
 功能是,当向本地数据库中 "新闻表 "(T_NEWS)中 
 插入数据前向远程的数据库插入相同的数据, 
 达到数据同步效果   
 -------------------------------------------------- 
 CREATE   OR   REPLACE   TRIGGER    "JLWEB ". "/uXATMqarWBoz+c5E1c=865f4d96 "    
             BEFORE 
 INSERT   ON    "T_NEWS "   FOR   EACH   ROW      
 BEGIN      
 INSERT   INTO    "JLWEB ". "T_NEWS "@ "J865F4D96.SYN.US.ORACLE.COM "   ( "NEWSID ", "SORTID ", "NEWSMODIFDATE ", "NEWSTITLE ", "USERID ", "NEWSCONTENT ")    
 VALUES(:NEW. "NEWSID ",:NEW. "SORTID ",:NEW. "NEWSMODIFDATE ",:NEW. "NEWSTITLE ",:NEW. "USERID ",:NEW. "NEWSCONTENT "); 
 EXCEPTION   WHEN   OTHERS    
 THEN    
 RAISE_APPLICATION_ERROR(-20008, '操作远程数据时出错.    '   ||   SQLCODE||SUBSTR(SQLERRM,1,200));      
 END; 
 --------------------------------------------------   
 但当我插入数据时ORACLE会出现异常   
 ORA-20008:   操作远程数据时出错.   -2068ORA-02068:   以下严重错误源于J865F4D96.SYN.US.ORACLE.COM 
 ORA-00600:   内部错误代码,参数:   [
kokegPinLob1],   [],   [],   [],   [],   [],   [],   [] 
 ORA-06512:   在 "JLWEB./uXATMqarWBoz+c5E1c=865f4d96 ",   line   1 
 ORA-04088:   触发器    'JLWEB./uXATMqarWBoz+c5E1c=865f4d96 '   执行过程中出错 
 ORA-06512:   在line   1   
 其中    "NEWSCONTENT "   列为   BLOB   型,如果插入时不插这一列就不出异常.   
 希望高手帮忙解决下这个问题.. 
 先谢了.
------解决方案--------------------create or replace directory utllobdir as  'c:\xxx '; --你的BLOB文件所在位置。 
 create table bfile_tab (bfile_column BFILE); 
 create table t (blob_column BLOB); 
 ---------------------------------------- 
 declare 
    a_blob  BLOB; 
    a_bfile BFILE := BFILENAME( 'UTLLOBDIR ', 'BLOB文件名 ');  
 begin 
    insert into bfile_tab values (a_bfile) 
      returning bfile_column into a_bfile; 
    insert into t values (empty_blob()) 
      returning blob_column into a_blob; 
    dbms_lob.fileopen(a_bfile); 
    dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile)); 
    dbms_lob.fileclose(a_bfile); 
    commit; 
 end; 
 / 
 --这样可以插入一个blob数据。
------解决方案--------------------學習...