Nclob处理的问题
SQL>    desc   tbl3; 
 Name      Type         Nullable   Default   Comments    
 -----   ------   --------   -------   --------    
 IDX         NUMBER   Y                                                                            
 CNAME   NCLOB      Y              
 下面的一个存储过程,我传进去很长的字符串,为什么每次存到tbl3表里面的cname只有一部分?   
 CREATE   OR   REPLACE   PROCEDURE   TIF_ADD_NEW(SQL_COMMAND   IN   NCLOB) 
 IS 
       S   NCLOB; 
       tmpS   VARCHAR2(2000); 
       iPOS   NUMBER; 
 BEGIN 
       S   :=   SQL_COMMAND; 
       INSERT   INTO   TBL3   VALUES(SEQ_TBL3.NEXTVAL,s); 
       iPOS   :=   INSTR(S, '; '); 
       WHILE   iPOS>    0 
       Loop 
             tmpS   :=   SUBSTR(S,1,iPOS-1); 
             begin 
                   tmps   :=   replace(tmps,chr(13), ' '); 
                   execute   immediate   tmpS; 
             exception   when   others   then 
                   rollback; 
             end; 
             S   :=   SUBSTR(S,iPOS+1,LENGTH(S)-iPOS); 
             IPOS   :=   INSTR(S, '; '); 
       END   LOOP;    
       COMMIT;    
 END;   
 好像nclob读取和存储有另外的方法,请指教 
------解决方案--------------------NCLOB是固定长度的多字节Character Large Object,是不是长度小了
------解决方案--------------------tmpS VARCHAR2(2000);是不是定义小了?