会在SQL*Plus中执行单个sql脚本文件
SQL>@c:\aaa.sql
但是现在有大量sql脚本,这样一个一个去执行不但效率不高,而且很容易漏掉。
请高手指点怎样同时执行多条sql脚本,在下不胜感激
SQL>@c:\aaa.sql
但是现在有大量sql脚本,这样一个一个去执行不但效率不高,而且很容易漏掉。
请高手指点怎样同时执行多条sql脚本,在下不胜感激
?
再写一个sql文件把需要执行的其他sql文件作为这个文件中的调用.
@file1.sql
@file2.sql
...
@filen.sql
@file1.sql
@file2.sql
...
@filen.sql
?
=======================================
可以使用DOS命令来获得所有文件名.
dir . >> sqlfile.txt
然后编辑SQLFILE.TXT文件,去掉无关信息,在文件名前加上@,[email protected]LFILE.SQL就相当于批处理文件了
dir . >> sqlfile.txt
然后编辑SQLFILE.TXT文件,去掉无关信息,在文件名前加上@,[email protected]LFILE.SQL就相当于批处理文件了
?
=======================================
在c盘下编辑一个文本文件,保存脚本:
update fnd_user a set a.description='OK' where a.user_id=1;
commit;
/
update fnd_user b set b.description='OKOK' where a.user_id=2;
commit;
/
然后在SQL PLUS下:
SQL> START 'C:\文件名.txt';
已更新 1 行。
提交完成。
提交完成。
已更新 1 行。
提交完成。
提交完成。
update fnd_user a set a.description='OK' where a.user_id=1;
commit;
/
update fnd_user b set b.description='OKOK' where a.user_id=2;
commit;
/
然后在SQL PLUS下:
SQL> START 'C:\文件名.txt';
已更新 1 行。
提交完成。
提交完成。
已更新 1 行。
提交完成。
提交完成。
=======================================
比如你要执行得2个sql脚本? a.sql b.sql
现在你重新写一个脚本 c.sql? 其中得内容如下
~~~~~~~~~~~~~~~
@@a.sql
@@b.sql
~~~~~~~~~~~~~~
然后把c.sql放在a.sql b.sql 得同一个目录 在sqlplus下执行 @c.sql 就可以了
现在你重新写一个脚本 c.sql? 其中得内容如下
~~~~~~~~~~~~~~~
@@a.sql
@@b.sql
~~~~~~~~~~~~~~
然后把c.sql放在a.sql b.sql 得同一个目录 在sqlplus下执行 @c.sql 就可以了