Mysql
 sql >> база данни >  >> RDS >> Mysql

Поддръжка на подготвени изявления от страна на сървъра с PDO?

Някои PDO драйвери не поддържат собствени подготвени изрази, така че PDO извършва емулация на подготовката. Освен това ви позволява ръчно да активирате тази емулация.

Проверете PDO::ATTR_EMULATE_PREPARES атрибут. Това е лошо документирано в текущото ръководство за ЗНП. Под лошо документиран имам предвид, че изглежда само в коментарите на сайта, а не в самото ръководство.

Обикновено искате да използвате подготвени изявления, когато е възможно. В случай на MySQL, ако се възползвате от кеша на заявките, може всъщност да искате да деактивирате местно подготвени изявления в PDO! Ръководството за MySQL съдържа повече информация , но кратката версия е, че версиите преди 5.1.17 не изпълняват подготвени изрази през кеша на заявките, а следващите версии използват кеша на заявките само при определени специфични (но често срещани) условия.

(Някои хора препоръчват да изключите изцяло кеша на заявките. Използване на големи размери на кеша всъщност може да бъде голям хит в производителността.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLSTATE[HY000] [2002] php_network_getaddresses:getaddrinfo неуспешно:Име или услуга не са известни

  2. Синтаксис на MySQL при създаване на външен ключ

  3. MySQL потребителската база данни няма колони за пароли - Инсталиране на MySQL на OSX

  4. Как да декларирам променлива в MySQL?

  5. Мога ли да използвам слоя на базата данни на Laravel самостоятелно?