CREATE OR REPLACE FUNCTION LONG_TO_CHAR( in_rowid rowid,in_ownervarchar,in_table_name varchar,in_column varchar2)RETURN varchar AStext_c1 varchar2(32767);sql_cur varchar2(2000);--set serveroutput on size 10000000000;--beginDBMS_OUTPUT.ENABLE (buffer_size=>null);sql_cur := 'select '||in_column||' from'||in_owner||'.'||in_table_name||' where rowid ='||chr(39)||in_rowid||chr(39);dbms_output.put_line (sql_cur);execute immediate sql_cur into text_c1;text_c1 := substr(text_c1, 1, 4000);RETURN TEXT_C1;END;
insert into repo_file_2 select uuid , create_time , creator , modify_time , modifier , digest_value , digest_algorithm , signature_value , certificate , swf_uuid , rec_ver , physical_file_id , file_name , content_type , long_to_char(rowid, 'xzsp_59', 'repo_file', 'file_size') from repo_file; commit;
在转换过程中如果数据量比较大的情况下可能要执行10几或者20几分钟,请耐心等待