Насколько я понимаю, подготовленные операторы в первую очередь предназначены для:
- Повышения эффективности запроса (предварительный анализ, кеширование плана выполнения, передача двоичных данных между клиентом и сервером)
- Обеспечения защиты от атак внедрения кода (по этому поводу не совсем понятно, но я думаю, что у меня есть базовое понимание)
Вопрос в том,
почему бы просто не использовать оператор PREPARE, который предоставляет MySQL, и заранее подготовить подготовленные операторы, а затем использовать их в своем PHP-приложении, либо PDO, либо PDO MySQLi? А еще лучше, создавать хранимые процедуры с использованием этих подготовленных операторов и предоставлять только их программистам PHP?
Таким образом, фактическое бремя создания правильных запросов разделяется/обрабатывается программистом базы данных. PHP-программист может полностью сосредоточиться только на реализации и оптимизации приложения.
Я не предвижу каких-либо изменений в базе данных, которую я буду использовать в ближайшее время. MySQL отвечает всем требованиям. Но чтобы мое приложение было чистым и независимым от БД, я мог бы использовать PDO. Или придерживайтесь процедурного кодирования и используйте mysqli
Это действительный/проверенный подход для создания приложения?
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/502 ... i-function
Мобильная версия