perl – 重新使用?在DBI准备

前端之家收集整理的这篇文章主要介绍了perl – 重新使用?在DBI准备前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法重用DBI准备语句中使用的?请考虑以下代码
$sth=$dbh->prepare("INSERT INTO mytable(a,b,c) SELECT ?,B(?),C(?)");
$sth->execute($a,$a,$a);

改为使用这样的东西会很好:

#I'm making this up as something I hope exists
$sth=$dbh->prepare("INSERT INTO mytable(a,B(?:1),C(?:1)");
$sth->execute($a);

请注意,只有一个$a传递给execute而不是三个.有没有办法在现实生活中做到这一点?

解决方法

这取决于你的DBD.例如,使用带有$1样式占位符的DBD :: Pg,或带有命名占位符和bind_param的DBD :: Oracle,您可以完全按照自己喜欢的方式执行操作.但是使用一般目的?在DBI范围内工作的占位符样式,这是不可能的.

猜你在找的Perl相关文章