我想通过perl中的sqlplus命令检查sql连接。 我已经使用下面的代码来做到这一点。在perl中执行sqlplus命令
print "Befores\n";
$rc=system("sqlplus system/system @sqlfile.sql");
print "After $rc\n";
sleep(10);
这次rc的返回值为0。但是当我提供错误的凭据。 sqlfile.sql文件包含唯一的sql命令'EXIT'。
$rc=system("sqlplus systemabc/system @sqlfile.sql");
这也以返回代码0结束。但是,手动执行Credentials是错误的。 帮我解决这个问题...
在此先感谢。 :)
根据http://perldoc.perl.org/functions/system.html,$?可能会给你你正在寻找的信息。 –
'@ sqlfile'是你试图插入的实际Perl数组,还是你犯的一个错误?你应该使用'use strict;使用警告;'来捕捉那样的错误。另外,'system'不返回命令的输出,它返回退出状态。如果你想输出,使用反引号或'qx()'。 – TLP
@TLP:根据http://docs.oracle.com/cd/B19306_01/server.102/b14357/ch3.htm#sthref798,OP使用正确的语法让sqlplus执行sqlfile文件中的sql命令。 SQL。 –