下面是Oracle中这两个包的简单的例子:
CREATE OR REPLACE PROCEDURE writeobj IS amount BINARY_INTEGER :=1; length_count int; position int:=1; data_buffer VARCHAR2 (1); file1 utl_file.file_type; res clob; BEGIN --create or replace directory FILEPATH as '/home/sunw/tk'; file1:=utl_file.fopen('/home/sunw/tk','testout.out','W'); --打开utl文件,第一个为路径,第二参为文件名,第三指定为'w'方式。 --SET SERVEROUTPUT ON; --SET LINESIZE 1000; --SET FEEDBACK OFF; --set long 999999; ------显示不完整 --SET PAGESIZE 1000; ----分页 DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false); --指定不导出storage信息。 res:=DBMS_METADATA.GET_DDL('TABLE','CK_RS'); --生成table对象ck_rs的ddl信息。res为返回的clob类型。 length_count := dbms_lob.getlength(res); WHILE length_count > 0 LOOP dbms_lob.read (res, amount, position, data_buffer); utl_file.put (file1, data_buffer); position := position + 1; length_count := length_count - 1; data_buffer := null; END LOOP; utl_file.fclose(file1); --关闭文件。 END writeobj;
原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/409.html