在搜索引擎里查询了这个问题,找到的几个答案都是创建两个文件,一个是sql文件,用来写登录数据库账户后的oracle命令,另一个是bat文件,用来写sqlplus命令然后把sql文件传入。
没有找到仅用一个bat文件解决的办法。
直接的解决方法没找到,就想到了间接的方法。就是在批处理中先写创建sql文件的命令,然后继续sqlplus调用,最后再把刚创建的sql文件给删除。
下面的例子是取消oracle账号密码自动定时过期的批处理(这边是先在bat同目录下创建了temp.sql文件):
@echo off echo conn sys/sys as sysdba;>>temp.sql echo alter profile default limit password_life_time unlimited;>>temp.sql echo exit;>>temp.sql sqlplus /nolog @temp.sql del temp.sql /f /s @echo 设置已完成,请按任意键退出... pause>nul