PDO:在PostgreSQL上使用局部变量

时间:2019-01-24 04:48:16

标签: php postgresql pdo

背景故事 我想使用PDO从数据库中读取数据,但是这不仅仅是一个查询。通常在MySQL上可以通过这种方式完成。

// Let's act $pdo is a PDO Object already
$localvar= "SET @dateMin=:dateMin,@dateMax=:dateMax;";

try {
    $stmtuser=$this->pdo->prepare($localvar);
    foreach ($input as $i => $val) {
        $stmtuser->bindValue(":".$i,$val,PDO::PARAM_STR);
    }
    $t1=$stmtuser->execute();
}   catch (PDOException $e) {
    echo "Error Message: ".$e;
}

$sql = "SELECT * FROM data WHERE date_Data = @dateMin";
try {
    $stmt=$this->pdo->query($sql);
    $checkExecute=$stmt->execute();
}   catch (PDOException $e) {
    $err="Error Message: ".$e;
}
while ($rowList=$stmt->fetch()){
    $response[]=$rowList;
}

print_r(json_encode($response)); // Give to front-end

如果有人想知道为什么要设置局部变量,那是因为我关闭了ATTR_EMULATE_PREPARES,这不允许两次绑定变量for security reason.,但是如果你们当中有人知道如何做得更好并且会想提建议,那就太好了。 但是, 这不是这里的主题。

我想要的

在PostgreSQL方式中是否等于或高于?

我尝试过的事情

我已经尝试过this.,但是没有运气!那里的其他评论者说它已被弃用。我尝试了它的各种变体,但似乎还无法实现。

在PostgreSQL中有这样做吗? 如果您需要其他信息,请询问更多。谢谢。

0 个答案:

没有答案