今天闲来无事, 做了个批量下载数据库对象的sql。
---------------------
declare
CURSOR C_OBJ IS
select OBJECT_NAME ,OBJECT_TYPE from dba_objects
where object_name like &P_MODULE
AND OBJECT_TYPE IN ('TABLE');
v_name varchar2(3);
begin
v_name :=substr(&p_module,1,3);
FOR I IN C_OBJ LOOP
DBMS_OUTPUT.put_line('SPOOL c:\OBJ\'||v_name||'\'||i.OBJECT_TYPE||'\'||I.OBJECT_NAME||'.SQL;');
IF I.OBJECT_TYPE ='TABLE' THEN
DBMS_OUTPUT.put_line('DESC '||I.OBJECT_NAME||';');
ELSE
DBMS_OUTPUT.put_line('select text from user_source where name='||''''||I.OBJECT_NAME||''''||';');
END IF;
DBMS_OUTPUT.put_line('spool off;');
END LOOP;
end;
--在sqpplus中前后加 spool C:\AAA.TXT ; SPOOL OFF;
稍微修改下aaa.txt 就可以用于批量下载了。
把常用的对象下载到本地, 方便查看。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7735683/viewspace-293538/ ,如需转载,请注明出处,否则将追究法律责任。