我正在使用Perl程序中的BCP实用程序将文件导入到SQL Server中。 在这我导入的文件,有一个错误的日期格式,以便导入过程失败,以下错误:当BCP失败时,Perl系统()命令不会返回失败
SQLState = 22008, NativeError = 0
Error = [Microsoft][SQL Server Native Client 10.0]Invalid date format
我执行bcp命令在我的Perl程序如下。
my $myBcp = "bcp.exe" <table name> in <temp file path> -f<format file> -m 1 -h "FIRE_TRIGGERS" -o<log file path>
my $myResult = system($myBcp);
当我打印$myResult
它给我'0'。由于“无效的日期格式”错误,它应该返回一个错误代码。
任何人都可以让我知道如何在我的Perl程序中捕获无效的日期格式错误?
感谢
我假设在你的真实程序中'$ myBcp'中的字符串被正确引用,而不是像你上面发布的那样? – TLP 2012-04-18 14:43:52
是的,它被正确引用。我只是给出了格式。 – user1019072 2012-04-18 14:46:28
除了您的实际代码外,您绝不应该发布任何内容,完全按照它的样子发布。当然不是无法编译的代码。它只会增加混淆。你应该知道'system'不会返回错误代码,只有程序的退出状态。见'perldoc -f系统'。 – TLP 2012-04-18 14:50:45