oracle 导出 sql 语句(脚本)的问题 ?
就像sql server中的那种功能,可以到出表、触发器、存储过程的sql脚本。
咋搞?
问题点数:100、回复次数:11Top
1 楼bzszp(SongZip)回复于 2002-05-23 14:19:37 得分 20
这是保存存储过程的sql脚本一个的方法
先修改init.ora
例如:
utl_file_dir=/usr //路径为 oracle所在的盘:/usr
此过程将用户TEMP的P1过程的代码保存到ORACLE安装盘下/USR/TEXT.TXT中
create or replace procedure TEST
is
file_handle utl_file.file_type;
STOR_TEXT VARCHAR2(4000);
N NUMBER;
I NUMBER;
begin
I:=1;
SELECT MAX(LINE) INTO N FROM ALL_SOURCE WHERE OWNER='TEMP' AND
NAME='P1';
file_handle:=utl_file.fopen('/usr','test.txt','a');
WHILE I<=N LOOP
SELECT TEXT INTO STOR_TEXT FROM ALL_SOURCE WHERE OWNER='TEMP' AND
NAME='P1' AND LINE= I;
I:=I+1;
utl_file.put_line(file_handle,stor_text);
END LOOP;
utl_file.fclose(file_handle);
commit;
end TEST;
/
exec TEST;
Top
2 楼bzszp(SongZip)回复于 2002-05-23 14:22:42 得分 0
最简单的方法是进入企业管理器,可以直接察看到表、触发器、存储过程的sql脚本,把它们复制出来就可以了。Top
3 楼lws0472(期待2008)回复于 2002-05-23 15:01:16 得分 0
可以将数据库用exp导出,然后用imp 用户名/密码 log = ....
会记录在log文件中Top
4 楼Jazzlover(强)回复于 2002-05-23 16:23:06 得分 0
: bzszp(蝎子)
我想要的是整个库的脚本。
lws0472() :
具体的步骤(包括语句)怎么做(写)呢?Top
5 楼bzszp(SongZip)回复于 2002-05-23 17:37:37 得分 20
SET ECHO ON
SPOOL SHANGJIAN.LOG;
HOST IMP 用户名/密码 @数据库名 LOG=DM.LOG FULL=Y IGNORE=Y
BUFFER=1024000 COMMIT=Y
SPOOL OFF;
Top
6 楼3yugui(亿硅)回复于 2002-05-23 17:58:19 得分 20
用toad工具,可以导出所有的oracle的脚本。Top
7 楼Jazzlover(强)回复于 2002-06-10 12:11:38 得分 0
3yugui(我不适合搞it) :
toad工具哪有呢?Top
8 楼dongjh()回复于 2002-06-10 12:45:02 得分 0
用toad工具,到www.google.com搜一下就可以了Top
9 楼bzszp(SongZip)回复于 2002-06-10 12:49:28 得分 10
http://www.quests.com/Top
10 楼muxuan(三生石)回复于 2002-06-10 12:52:30 得分 10
用PL/SQL Developer的export user objectsTop
11 楼zhangzb1016(彬彬)回复于 2002-06-10 17:48:16 得分 20
用oracle 安装目录bin 下的exp最简单,可以导出整个数据库,再用imp 导入就可以了,呵呵Top




