日期:2014-05-16 浏览次数:21191 次
create or replace directory DIR_TEST as 'D:\';
create table c(c1 varchar2(10),c2 date,c3 number);
insert into c values('a',sysdate,1);
insert into c values('b',sysdate-1,11);
insert into c values('c',sysdate-2,111);
insert into c values('d',sysdate-3,1111);
insert into c values('e',sysdate-4,11111);
commit;
declare
v varchar2(1000);
v1 varchar2(100);
v2 varchar2(100);
out_file utl_file.file_type; --定义一个文件类型
begin
out_file := utl_file.fopen('DIR_TEST', 'insert.sql', 'W');
--输出insert脚本到文件
for w in (select * from c) loop
--处理字符型
v1 := ''''
------解决方案--------------------
w.c1
------解决方案--------------------
'''';
--处理日期型
v2 := 'to_date('''
------解决方案--------------------
to_char(w.c2, 'yyyymmdd hh24:mi:ss')
------解决方案--------------------
''',''yyyymmdd hh24:mi:ss'')';
v := 'insert into c values('
------解决方案--------------------
v1
------解决方案--------------------
','
------解决方案--------------------
v2
------解决方案--------------------
','
------解决方案--------------------
w.c3
------解决方案--------------------
');';
utl_file.put_line(out_file, v);
end loop;
--关闭文件流
utl_file.fflush(out_file);
utl_file.fclose(out_file);