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

PostgreSQL Transaction Isolation READ UNCOMMITTED

PostgreSQL не поддържа мръсни четения (READ UNCOMMITTED ). Както @a_horse_with_no_name посочи, ръководството казва:

Това отговаря на правилото в стандарта, че базата данни трябва да третира неподдържаните нива на изолация като най-силното поддържано ниво.

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

Има има няколко начина, по които текущите транзакции могат да комуникират и да си влияят една на друга:

  • Чрез споделено клиентско приложение (разбира се)
  • SEQUENCESERIAL ) актуализациите се случват незабавно, а не по време на ангажиране
  • препоръчително заключване
  • Нормално заключване на ред и таблица, но в рамките на правилата на READ COMMITTED видимост
  • UNIQUE и EXCLUSION ограничения

Възможно е да видите необвързани кортежни данни, като използвате средства за отстраняване на грешки само за суперпотребител като pageinspect , но само ако наистина разбирате вътрешностите на хранилището за данни. Подходящ е само за възстановяване на данни и отстраняване на грешки. Ще видите множество версии на данни в стена от шестнадесетичен изход.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да стартирате Jasmine beforeAll за всички тестови файлове

  2. Postgres просто спря да работи на случаен принцип (Rails, PGSQL.5432)

  3. Rails:разрешението е отказано за relation schema_migrations

  4. Как да накарам Flask SQLAlchemy да използва повторно db връзки?

  5. Доктрина - Добавяне на времеви печат по подразбиране към обект като NOW()