Ошибка обработки PDO с помощью метода query () или prepare () - PullRequest
0 голосов
/ 31 мая 2018

Какой лучший (более быстрый) способ обработки, если есть ошибка с выполненным SQL?

с использованием метода query() PDO:

$db_conn->query("some sql"); 
if ($db_conn->errorInfo()[2] !== NULL) {
    // there is error 
}

или с методом prepare():

$sth=$db_conn->prepare("some sql");
$sth->execute();
if ($sth->errorInfo()[2] !== NULL) {
    // there is error 
}

Я имею в виду случай, когда нет необходимости заботиться о SQL-инъекциях и когда нет повторных запросов.

Они одинаковы с точки зрения производительности?и если да, то лучше использовать вариант query(), потому что кода немного меньше?

1 Ответ

0 голосов
/ 31 мая 2018

Вы можете использовать исключения.См. http://php.net/manual/en/pdo.error-handling.php

$db_conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Затем позже:

try {
    $sth=$db_conn->prepare("some sql");
    $sth->execute();
} catch (PDOException $e) {
    echo $e->getMessage();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...