连续运行多个更新| perl with oracle db

时间:2016-02-13 22:44:21

标签: oracle perl

大家。

有没有办法在oracle中连续执行一堆UPDATES和INSERTS到数据库?

我所获得的是类似的东西,但它没有用,也没有返回错误信息。

my $query = "UPDATE ...; UPDATE...; INSERT...;"
$sth = $db->prepare($query);
$sth->execute() or die $sth->errstr;
if ($sth->err){
    $content .= "error code: " . $sth->err . "msg:" . $sth->errstr;
}

提前致谢!

2 个答案:

答案 0 :(得分:2)

一种解决方法是将UPDATE / INSERT逻辑放在存储过程中,并使用prepareexecute从Perl调用该存储过程,或者(如果您只需要调用它)曾经)do

答案 1 :(得分:1)

不,这是不可能的。根据{{​​3}}:

  

多个SQL语句不能组合在一个语句句柄($ sth)

我认为这个决定是出于安全考虑而做出的,可以提供DBI documentation的额外保护。