1

我在尝试执行通过连接几个变量形成的 sql 时遇到以下错误。

DBD::ODBC 尚不支持多次绑定命名参数

我可以从 sql 提示符执行相同的 sql,没有任何问题!

我的代码是这样的:(DBI 连接,日期时间 $format,所有使用的变量都已在前面的步骤中创建)

$sql = "";
my $param1 = $format->parse_datetime($dateval->ymd('-'));
$param1->add(days => 1);
$sql = crt_view($param1,$param2,$param3,$param4); #crt_view is function which will return a segment of my sql for the parameters passed
$sqlins = "create or replace view v_tabl_xxx as ".$sql;
$sth = $dbi->prepare($sqlins);
$sth->execute() or die("[ERROR] : \n\t$DBI::errstr\n");
4

1 回答 1

4

听起来它在不应该将 SQL 的一部分解释为命名占位符时。尝试做

$dbi->{odbc_ignore_named_placeholders} = 1;

第一的。

于 2013-06-18T20:02:01.677 回答