gpt4 book ai didi

sql - 如何使用 Perl 的 DBI 中的绑定(bind)查询来选择为空的行?

转载 作者:行者123 更新时间:2023-12-04 14:53:21 25 4
gpt4 key购买 nike

我希望能够将某些内容传递给 SQL 查询,以确定我是否只想选择某个列为空的那些。如果我只是构建一个查询字符串而不是使用绑定(bind)变量,我会这样做:

if ($search_undeleted_only)
{
$sqlString .= " AND deleted_on IS NULL";
}

但我想使用绑定(bind)查询。这会是最好的方法吗?
my $stmt = $dbh->prepare(...
"AND (? = 0 OR deleted_on IS NULL) ");
$stmt->execute($search_undeleted_only);

最佳答案

是的;一个相关的技巧是,如果你有 X 个潜在的过滤器,其中一些是可选的,就是让模板说 " AND ( ?=-1 OR some_field = ? ) " , 并创建一个特殊的函数来包装执行调用并绑定(bind)所有第二个 ?s。 (在这种情况下,-1 是一个特殊值,意思是“忽略此过滤器”)。

Paul Tomblin 的更新:我编辑了答案以包含评论中的建议。

关于sql - 如何使用 Perl 的 DBI 中的绑定(bind)查询来选择为空的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/433632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com