Что такое client-side prepared statement?


Я начинаю разрабатывать страницы с помощью PHP, как я еще не зная языка, я решил искать какой модуль использовать, чтобы сделать соединение с базой данных MySQL.

от этот ответ, я обнаружил, что модуль mysql_* уже был снят с производства и содержит несколько проблем безопасности. В тот же ответ, он указывает, использование mysqli_* и PDO, как я был в сомнении был сравним различий между два.

Это заставило меня еще более запутанной, ибо mysqli_*, кажется, предлагает более поддержки, что PDO, однако только PDO, поддерживает client-side prepared statements.

Мой вопрос заключается в чем разница между prepared statements server-side и client-side? При использовании и при использовании других?

 5
Author: Comunidade, 2014-02-01

1 answers

И драйвер PDO-это слой abstraccao, и не связан ни с BD реляционной указывает. Этот слой имитирует prepared statements со стороны клиента, в случае, если сервер не поддерживает prepared statements.

Библиотека mysqli - это слой определяет для баз данных MySQL. В качестве базы данных MySQL поддерживают prepared statements стороне сервера, нет необходимости имитировать.

, Кратко, использует server-side prepared statements всегда, что возможный. В simulacao со стороны клиента, так и' util когда сам сервер не " в состоянии сделать это.

Использует PDO всегда, что хочешь, слой abstraccao экстра - или есть, если не хочешь, что был зависимым от BD определяет, или, как называют по @bfavaretto, вы хотите использовать именованные параметры.

 5
Author: dcastro, 2014-02-01 14:24:04