Oracle SQL*Plus仅限假脱机数据并排除错误
我正在使用.Bat文件来执行一个sql脚本,与此类似Oracle SQL*Plus仅限假脱机数据并排除错误,oracle,sqlplus,spool,Oracle,Sqlplus,Spool,我正在使用.Bat文件来执行一个sql脚本,与此类似 SET HEAD OFF SET ECHO OFF WHENEVER SQLERROR EXIT 1; SPOOL D:\oracle\results.TXT SELECT name FROM employee where employee_number = 123; SPOOL OFF; EXIT; 如果查询运行,我将获得没有问题的结果,但是如果数据库关闭或发生导致oracle错误的事情,我将在文本文件中得到错误(我不想这样),我的
SET HEAD OFF
SET ECHO OFF
WHENEVER SQLERROR EXIT 1;
SPOOL D:\oracle\results.TXT
SELECT name FROM employee where employee_number = 123;
SPOOL OFF;
EXIT;
如果查询运行,我将获得没有问题的结果,但是如果数据库关闭或发生导致oracle错误的事情,我将在文本文件中得到错误(我不想这样),我的问题是:
- 如果只有查询在没有错误的情况下运行,是否有办法假脱机数据?如果有错误,是否有办法排除?或者至少如果有错误李>
- 我可以在results.txt文件中写入特定文本而不是oracle错误吗
spool
之前执行一个虚拟select 42 from dual
,如果数据库不可用,它将终止脚本。但是,如果数据库关闭或发生了某种导致oracle错误的事情,我将在文本文件中得到一个错误如果数据库关闭,您甚至如何通过SQL*Plus连接并执行查询?除非连接,否则无法执行spool。@jarlh我在使用oracle10g@a_horse_with_no_name这对我很有效,非常感谢。