Есть ли способ установить уровень изоляции независимо от конкретного драйвера базы данных в php? Похоже, что нет.установить уровень изоляции через PDO или Zend_Db_Adapter_Abstract?
ответ
К сожалению, я не уверен, что есть способ сделать это с Zend_Db. В руководстве указано, что setTransactionIsolationLevel()
может использоваться только с Microsoft SQL Server adapter.
Вы можете использовать setTransactionIsolationLevel() для установки уровня изоляции для текущего соединения . Значение может быть SQLSRV_TXN_READ_UNCOMMITTED, SQLSRV_TXN_READ_COMMITTED, SQLSRV_TXN_REPEATABLE_READ, SQLSRV_TXN_SNAPSHOT или SQLSRV_TXN_SERIALIZABLE.
Не похоже, что API Zend_Db реализует способ управления уровня изоляции транзакций, единственный способ - написать свои собственные инструкции SQL и выполнить их в соответствии с используемым драйвером PDO.
Я бы рекомендовал вам использовать лучший уровень абстракции базы данных, такой как Doctrine (действительно мощный). Тогда вы могли бы сделать это следующим образом:
Doctrine\DBAL\Connection
также методы контроля уровня изоляции транзакций , как поддерживается основной базой данных.Connection#setTransactionIsolation($level)
иConnection#getTransactionIsolation()
может использоваться для этой цели. В возможных уровней изоляции представлены следующие константы:
<?php
Connection::TRANSACTION_READ_UNCOMMITTED
Connection::TRANSACTION_READ_COMMITTED
Connection::TRANSACTION_REPEATABLE_READ
Connection::TRANSACTION_SERIALIZABLE
См this question знать, как интегрировать Doctrine с ZF и this page для получения дополнительной информации об управлении транзакциями с помощью доктрины.
- 1. Как установить уровень изоляции
- 2. Уровень изоляции ADO.NET v Уровень изоляции транзакцииScope
- 3. установить уровень изоляции для postgresql хранимых процедур
- 4. Как установить уровень изоляции SNAPSHOT весной
- 5. Уровень изоляции пакета SSIS vs Сохраненная процедура Уровень изоляции
- 6. Установить уровень изоляции в Yii глобально
- 7. Установить уровень изоляции транзакций Play Framework 2.3
- 8. TransactionScope и уровень изоляции
- 9. Как изменить уровень изоляции?
- 10. java.sql.Connection Уровень изоляции
- 11. Mysql XA Уровень изоляции
- 12. Измените уровень изоляции транзакции
- 13. Сделка, уровень изоляции
- 14. Postgres Issue Уровень изоляции
- 15. Установите уровень изоляции в EclipseLink
- 16. Уровень изоляции запроса Neo4j Cypher
- 17. Сериализуемый уровень изоляции в оракуле
- 18. Как установить уровень изоляции транзакций Postgres с Java?
- 19. Уровень изоляции в транзакции Sql
- 20. Уровень изоляции автоматизированных сценариев BDD?
- 21. Sql соединения удерживания Уровень изоляции
- 22. Уровень изоляции транзакций для SELECT
- 23. установить уровень изоляции транзакции в области процедур в mysql
- 24. Entity Framework Летучие Уровень изоляции
- 25. Уровень изоляции транзакций - выбор правильного
- 26. Уровень изоляции Serializable vs snapshot
- 27. Кассандра изоляции на уровень строк
- 28. Уровень безотказной изоляции sqlite Python
- 29. Уровень изоляции READ_UNCOMMITTED не работает
- 30. уровень изоляции и несогласованное состояние