MySQL по сравнению с MySQLi при использовании [закрытого] PHP

Который лучше, MySQL или MySQLi? И почему? Который я должен использовать?

Я имею в виду лучше не только с точки зрения производительности, но и любой другой соответствующей функции.

161
задан Dharman 27 October 2019 в 11:39
поделиться

0 ответов

Если Вы взглянули на MySQL Improved Extension Overview , он должен сказать Вам все, что необходимо знать о различиях между двумя.

основные полезные функции:

  • Объектно-ориентированный интерфейс
  • поддержка подготовленных операторов
  • поддержка нескольких операторов
  • поддержка транзакций
  • расширенные возможности отладки
  • встроенная поддержка сервера.
109
ответ дан Tharif 23 November 2019 в 21:27
поделиться

Я отказался от использования mysqli. Это просто слишком нестабильно. У меня были запросы, которые разрушают PHP, использующий mysqli, но работают просто великолепно с mysql пакетом. Также mysqli отказывает на столбцах LONGTEXT . Эта ошибка была повышена в различных формах с тех пор, по крайней мере, 2005 и остается поврежденной . Я честно хотел бы использовать подготовленные операторы, но mysqli просто не достаточно надежен (и никто, кажется, не потрудился фиксировать его). Если Вы действительно хотите подготовленные операторы, идут с PDO.

15
ответ дан cletus 23 November 2019 в 21:27
поделиться

MySQLi поддерживает улучшенный MySQL. Это - объектно-ориентированный интерфейс к привязке MySQL, который делает вещи легче использовать. Это также предлагает поддержку подготовленных операторов (которые являются очень полезны). Если Вы находитесь на использовании PHP 5 MySQLi.

12
ответ дан Ross 23 November 2019 в 21:27
поделиться

То, что лучше, является PDO; это - менее неработоспособный интерфейс и также обеспечивает те же функции как MySQLi.

Используя подготовленные операторы хорошо, потому что это устраняет возможности Внедрения SQL; использование серверной стороны подготовилось, операторы плохо, потому что это увеличивает число распространений в прямом и обратном направлениях.

5
ответ дан MarkR 23 November 2019 в 21:27
поделиться

для меня подготовленные операторы являются необходимой функцией. более точно, привязка параметров (который только работает над подготовленными операторами). это - единственный действительно нормальный способ вставить строки в команды SQL. я действительно не доверяю функциям 'выхода'. соединение с БД является протоколом двоичной синхронной передачи данных, почему использование ограниченный ASCII подпротокол для параметров?

3
ответ дан Javier 23 November 2019 в 21:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: