توضیحات

دستور set transaction برای ست کردن یک تراکنش به عنوان read-only، read/write، سطح Isolation، تخصیص نام به تراکنش یا تخصیص یک rollback به یک تراکنش است.

دستور

دستور Set transaction به صورت زیر نوشته می‌شود:

SET TRANSACTION [ READ ONLY | READ WRITE ]
                [ ISOLATION LEVEL [ SERIALIZE | READ COMMITED ]
                [ USE ROLLBACK SEGMENT 'segment_name' ]
                [ NAME 'transaction_name' ];

.

READ ONLY: گزینه‌ای اختیاری است، اگر ست شود فقط به عنوان یک تراکنش read-only در نظر گرفته می‌شود.
READ WRITE: گزینه‌ای اختیاری است، اگر ست شود به عنوان یک تراکنش read/write در نظر گرفته می‌شود.

ISOLATION LEVEL: گزینه‌ای اختیاری است، که دو انتخاب دارد:
ISOLATION LEVEL SERIALIZE : اگر یک تراکنش تلاش برای آپدیت کردن منبعی داشته باشد که قبلا توس منبع دیگر آپدیت شده بود ولی commit نشده بود تراکنش لغو شود.
ISOLATION LEVEL READ COMMITTED: اگر تراکنش به یک row lock برخورد باید صبر کند تا آن lock برطرف شود.
USE ROLLBACK SEGMENT: گزینه‌ای اختیاری است، اگر به کار رود به این معنی است که تراکنش را به بخش rollback تخصیص می‌دهد که توسط segment_name نام‌گذاری شده است.

 

 


مثال

مثال‌هایی از دستور Set Transaction را مشاهده می‌کنیم:

SET TRANSACTION READ ONLY NAME 'RO_example';

SET TRANSACTION READ WRITE NAME 'RW_example';