Sayfayı Yazdır | Pencereyi Kapat

SQL SERVER WITH (NOLOCK)

Nereden Yazdırıldığı: Datakent
Kategori: Diğer bölümler
Forum Adı: Microsoft SQL Server
Forum Tanımlaması: Microsoft SQL Server ile ilgili soru / sorun ve paylaşım bölümü
URL: http://forum.datakent.com/forum_posts.asp?TID=2790
Tarih: 28.Mart.2024 Saat 23:02


Konu: SQL SERVER WITH (NOLOCK)
Mesajı Yazan: murat turan
Konu: SQL SERVER WITH (NOLOCK)
Mesaj Tarihi: 19.Nisan.2015 Saat 10:36
SQL SERVER WITH (NOLOCK)  

//210214 - MT
eğer BEGIN TRAN

ile bir blok başlatılmış ise, blok içinde işlem sonlana kadar
erişilmiş satırlar kilitleniyor
ve sen BEGIN TRAN aralığında erişilmiş satırlara ayrıca bir QUERY den 
erişmeye çalışırsan ve WITH (NOLoCK) demediysen o satırlara erişimine izin verilmediği gibi
QUERY beklemede kalıyor. 

örnek:

BEGIN TRAN

UPDATE dbo.iller SET
 il_adi = 'KADANA'
where il_id = 2

PRINT 'DURAKSA';

ROLLBACK

yukarıdaki komut 

PRINT 'DURAKSA';     satırında durdurulsun. ve aşağıdaki sorgu 
ayrı bir bölümde çalıştırılmaya çalışılsın. sonuç: işlem sonsuz döngüdeki gibi beklemede kalacak
ve sonuç dönmeyecektir.


SELECT * FROM dbo.iller
WHERE il_id = 2

eğer aşağıdaki gibi çalıştırılırsa sorunsuz olarak sorgu çalışacak ve sonuç verecektir.


SELECT * FROM dbo.iller WITH(NOLOCK)
WHERE il_id = 2




-------------
http://www.kasatakip.com - Kasa Takip  |  http://www.caritakip.com - Cari Takip  |  http://www.evraktakip.com - Evrak Takip  |  http://www.etasqlmobil.com - ETA SQL Mobil



Sayfayı Yazdır | Pencereyi Kapat