使用BAT文件执行SQL文件后CMD窗口无法自动关闭的问题求助
解决CMD窗口执行BAT脚本后无法自动关闭的问题
你的问题根源在于sqlplus执行完SQL脚本后会停留在交互会话中,没有自动退出,导致BAT脚本里的exit命令无法触发。可以通过以下两种方法解决:
方法一:在SQL脚本末尾添加退出命令
在你的filename.sql文件最后一行添加:
EXIT;
这样sqlplus执行完所有SQL语句后会自动退出会话,BAT脚本后续的exit命令就能正常执行,CMD窗口随之关闭。
方法二:使用SQLPlus的静默模式启动
修改BAT脚本中的sqlplus命令,添加-s参数(静默模式,屏蔽SQLPlus的欢迎信息和提示符):
@echo off sqlplus -s username/password@dbname @filename.sql > output.txt exit
配合方法一使用效果更佳,既能避免不必要的输出,也能确保会话正常退出。
内容的提问来源于stack exchange,提问作者Arun Madhunala
相关产品推荐
相关产品推荐

