Middle+
Postgres-ში დეფოლტ ტრანზაქციის რეჟიმი რა არის?
sobes.tech AI
პასუხი AI-სგან
PostgreSQL-ში, დეფოლტად, ტრანზაქციები მუშაობს "Read Committed" რეჟიმში. ეს ნიშნავს, რომ თითოეული ბრძანება ტრანზაქციის შიგნით ხედავს მხოლოდ იმ მონაცემებს, რომლებიც ამ ბრძანების შესრულების დროს არის დამტკიცებული. სხვა სიტყვებით რომ ვთქვათ, ტრანზაქცია არ ხედავს სხვა ტრანზაქციების დაუმთავრებელ ცვლილებებს.
მაგალითი:
BEGIN;
-- დეფოლტად "Read Committed" რეჟიმი
SELECT * FROM users WHERE id = 1;
COMMIT;
თუ გსურთ იზოლაციის დონე შეცვალოთ, ამის გაკეთება შეგიძლიათ შემდეგი ბრძანებით:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
ან ტრანზაქციის დაწყებისას:
BEGIN TRANSACTION ISOLATION LEVEL SERIALIZABLE;