5

我正在尝试使用“where in”子句获取顶级信息,但如果我使用 bindvalue 或 bindparam,我不会得到任何结果。

这是我没有给出任何结果的查询

$user2 = $db->prepare("Select top 100 memb_guid,memb___id,mail_addr,Gender,Country from MEMB_INFO where memb___id in (Select memb___id from MEMB_STAT where IP = :ip)");
$user2->bindValue(':ip','127.0.0.1',PDO::PARAM_STR);
$user2->execute();

如果我使用没有任何绑定值或参数的直接搜索,我会得到结果

$user2 = $db->prepare("Select top 100 memb_guid,memb___id,mail_addr,Gender,Country from MEMB_INFO where memb___id in (Select memb___id from MEMB_STAT where IP = '127.0.0.1')");
$user2->execute();

谁能帮我在这个搜索“where in”子句中使用绑定值或参数?

@PhilCross 这是我在使用 var_dump 时得到的:

object(PDOStatement)#4 (1) { ["queryString"]=> string(142) "Select top 100 memb_guid,memb___id,mail_addr,Gender,Country from MEMB_INFO where memb___id in (Select memb___id from MEMB_STAT where IP = :ip)"

ps:我用的是MSSQL Server

4

1 回答 1

-1

绑定值的键应该没有':'

并且绑定值应该在变量中。

$ip = '127.0.0.1';

$user2->bindValue('ip',$ip,PDO::PARAM_STR);

于 2014-04-09T16:57:11.627 回答