PDO: использование локальной переменной в PostgreSQL - PullRequest
0 голосов
/ 24 января 2019

Справочная история, Я хотел прочитать данные из базы данных, используя 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, что дважды запрещает связывание переменной по соображениям безопасности. Однако, если кто-то из вас знает, как это сделать лучше и хотел бы дать совет, было бы неплохо. Но, это не тема здесь.

Что я хотел

Эквивалент выше или лучше в PostgreSQL?

То, что я пробовал

Я пробовал это. Но безуспешно!И другие комментаторы там говорят, что это устарело.Я попробовал варианты этого, но пока не могу этого сделать.

Есть ли что-нибудь, чтобы сделать это в PostgreSQL? Пожалуйста, попросите больше, если вам нужна дополнительная информация.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...