首先,做一个简单的sql文件(log.sql)。
在这个SQL文件中我们创建了一个表。
接下来,我们来建一个bat批处理文件(log.bat)。
在这个bat文件里面我们调用绝对路径的sql文件,并将执行过程及结果输出到log.txt文件中。
最后,我们运行bat文件,执行多个sql脚本plsql语句。
bat文件调用数据库中的存储过程:
假设数据库中一个存储过程,名称为Produce_log
我们只需要修改独立的sql文件如下即可:
execute Produce_log
exit
Oracle执行外部文件:c:>sqlplus
user/pwd@db
sql>@new.sql
执行多个sql文件:
1.把所有的文件都放在同一个目录下,然后在命令行里执行命令:
c:>dir/b
>
d:/1.sql
会把所有的sql文件名都输出到一个sql文件中。
2.用UltraEdit打开生成的sql文件,alt+C切换到column
mode,给所有的行前都添加一个"@",保存。
3.在sqlplus中执行"@d:/1.sql"
如何避免'&'字符:
sql中&可以传递参数,但有时需要插入'&',例:
SQL>
select
'&hello'
v
from
dual
输入
hello
的值:
hello
原值
1:
select
'&hello'
v
from
dual
新值
1:
select
'hello'
v
from
dual
v
-----
hello
可以使用如下方法避免:
A:
SQL>
select
chr(38)
||
'hello'
v
from
dual
V
------
&hello
B:
SQL>
set
define
off
SQL>
select
'&hello'
v
from
dual
V
------
&hello
1.在SQL*PLUS下按回车不行是因为你在SQL语句结束时没有以(分号)结尾,以分号结尾再按回车就可以了2.如果常用的话,建议使用PL/SQL Developer,功能强,易使用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)