perl执行insert语句,但未插入数据

时间:2019-09-02 09:23:47

标签: oracle perl dbi

我有一个需要用perl处理的简单插入语句

insert into table
select column1, column2, column3 from table
where condition;

如果我在Oracle中手动运行该语句,它可以正常工作并插入行。

但是当我想在我的perl代码中执行它

$dbh = DBI->connect("dbi:Oracle:$dsn", $usr,$pw, {AutoCommit => 1,RaiseError=>1,PrintError=>1}) || die "connection failure";

$dbh->{HandleError} = sub {
    print "Error: $DBI::errstr";
    $errmsg = "$DBI::errstr";
    if ($stmt) {
    $stmt->finish();}
    $dbh->disconnect();
    croak { message=> $errmsg } ;
    };

$stmt = $dbh->prepare($expanded_sql)  || die "prepare failed";
    $stmt->execute()  || die  "executing failed";
    $stmt->finish();
    $dbh->disconnect;

perl代码似乎正在正常运行,但是没有数据插入Oracle DB。知道我在做什么错吗?

0 个答案:

没有答案
相关问题