Senhores bom dia, estou tentando executar um loader via perl. estou utilizando a versao 5.10.0 no windows xp. segue a prate do codigo que estou com problemas.<br><br>sub loaderInadifixa<br>{<br> GravaLog($logHandele,"INICIO DO LOADER DO ARQUIVO INADIFIXA!!!!");<br>
my $arq_loader_ctl = $_[0];<br> my $arq_loader = $_[1];<br> my $sql = "sqlldr direct=true discard=C:\\Temp\\transact\\log.dis userid=xxxx\@yyyy/xxxxcontrol=C:\\Temp\\transact\\Transact_loader_20090811.ctl data=C:\\Temp\\transact\\Transact_loader_20090811.txt BAD=C:\\Temp\\transact\\bad_execucao.bad log=C:\\Temp\\transact\\log_execucao.log"; <br>
<br> my $dbh = DBI->connect("DBI:Oracle:$banco",$usuario,$senha)<br> or die("Nao foi possivel realizar a conexao com o bando de dados: $DBI::errstr");<br> <br> my $sth = $dbh->prepare($sql)<br>
or die("nao foi possivel preparar o comando: ", $dbh->errstr(), "\n");<br> <br> $sth->execute() or die ("Nao foi possivel executar o comando:", $sth->errstr(),"\n");<br>
<br> GravaLog($logHandele,"FIM DO LOADER DO ARQUIVO INADIFIXA!!!!");<br>}<br><br><br>esta ocorrendo o seguinte erro.<br><br>DBD::Oracle::st execute failed: ORA-00900: invalid SQL statement (DBD ERROR: OCIStmtExecute) [for Statement "sqlldr direct=true discard=C:\Temp\transact\log.dis userid=TRANSACT@ACRDEV1/transact control=C:\Temp\transact\Transact_loader_20090811.ctl data=C:\Temp\transact\Transact_loader_20090811.txt BAD=C:\Temp\transact\bad_execucao.bad log=C:\Temp\transact\log_execucao.log"] at C:/workspace/Scripts_Perl/Transact.pl line 168.<br>
Nao foi possivel executar o comando:ORA-00900: invalid SQL statement (DBD ERROR: OCIStmtExecute)<br><br><br>Entretanto quando executo o loader na mao <br><br>sqlldr direct=true discard=C:\Temp\transact\log.dis userid=TRANSACT@ACRDEV1/transact control=C:\Temp\transact\Transact_loader_20090811.ctl data=C:\Temp\transact\Transact_loader_20090811.txt BAD=C:\Temp\transact\bad_execucao.bad log=C:\Temp\transact\log_execucao.log<br>
<br>ele roda ok!!!!!!<br><br><br clear="all">Elvio Barbalho<br>Brasília, DF<br>Brasil<br><br>T + 55 61 21096814<br>C + 55 61 84223137<br>C + 55 61 81751213<br><a href="mailto:elvio.barbalho@gmail.com">elvio.barbalho@gmail.com</a><br>
<br><br>