最近遇到一件怪事:
#!/usr/bin/perl
use sapnwrfc;
use utf8;
use Data::Dumper;
use Encode;
use DBI;
require "$ENV{HOME}/perl/setEnv.pl";
SAPNW::Rfc->load_config("$ENV{HOME}/perl/connPRD");
my $conn = SAPNW::Rfc->rfc_connect();
my $dbh = DBI->connect("$connectString", "$username", "$pass",{ RaiseError => 1, AutoCommit => 0 })
or print "Can't connect to database: ", $DBI::errstr, "\n";
my $sqlDel = qq{delete from SAP_MARA};
my $sthDel = $dbh->prepare($sqlDel);
$sthDel->execute();
my $sql = qq{... };
my $sth = $dbh->prepare($sql);
my $i;
my @dt;
my @matnr;
&main();
...
即使AutoCommit設為0,但是執行紅字時仍會自行commit,如果我將紅字放到main{} 中執行,就不會有AutoCommit現象...
實在很是奇怪???
沒有留言:
張貼留言