الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما هي اسباب حدوث Lock علي اي جدول ؟؟

مغلق
بدأه adel_elgo في 23 مايو 2006 · 6 رد · 603 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ما هو سبب حدوث Lock علي اي جدول ؟؟

اعتقد ان هذا السؤال سهل جدا لكنني بالطبع لا اعرف الاجابة :D

ارجوا سرعة الرد

#2

هذه الجمله ستقوم بعمل locking على الجدول

begin tran
delete from Account_Main where account_ID = 15

اذا لم تقم بعمل commit or rollback يبقى الجدول مغلقا ولا يستطيع اي مستخدم ان يتعامل معه

عموما من الممكن عمل قراءاء قذرة :) ( هذا هو المصطلح الذي لا اعرف له ترجمه غير هذه) Dirty Reads اي قراءة بيانات الجداول التي هي بداخل Transaction لم يكتمل أو يرد

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

بالطبع تستخدم في حالات الـ debuging and troubleshooting وليس على الدوام لأنها تضرب ال Integrity & consistency في مقتل

تم تعديل هذه المشاركة بواسطة IUnknown في 23 مايو 2006 في 12:40

When all else fails, read the instructions.

If there is a possibility of several things going wrong the one that will cause the most damage will be the one to go wrong.

No Matter how many times you repeat, there will be someone not listening .

To beat the bureaucracy, make your problem their problem

55926083.png

#3

شكرا اخ IUnknown

معلومات قيمة كالعادة :)

لكن عندي جدول - في بعض الحالات - يحدث له lock بمجرد عمل select عليه

اعتقد ان هذا غريب شوية صح ؟

تم تعديل هذه المشاركة بواسطة adel_elgo في 23 مايو 2006 في 17:07

#4

هل جربت السكريبت السابق الذي يعطيك الجداول الـ Locked

جربه لتعرف من يغلق لك الجداول

هل تستخدم Isolation level Serializable في هذا المستوى أي transaction يغلق الجدول حتى لو select

When all else fails, read the instructions.

If there is a possibility of several things going wrong the one that will cause the most damage will be the one to go wrong.

No Matter how many times you repeat, there will be someone not listening .

To beat the bureaucracy, make your problem their problem

55926083.png

#5

اخي العزيز

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

هل تقصد هذا السكريبت ... طيب فين احطه ؟ :o

اقتباس
جربه لتعرف من يغلق لك الجداول

انا اعرف الجهاز الذي يقوم بإغلاق الجدول و ذلك عن طريق السكريبت الذي و ضعته في مشاركة سابقة

اقتباس
هل تستخدم Isolation level Serializable في هذا المستوى أي transaction يغلق الجدول حتى لو select
:wacko:

ارجو التوضيح ماذا تقصد !

#6

عذرا للتأخير فقد كنت في رحلة عمل بالامس

السكريبت الأول سيجعلك تقرأ من أي جدول حتى لو Locked

هل تستطيع معرفة السكريبت الذي يقوم بغلق الجدول

Serializable احد انواع ال locking يغلق الجدول بعد اي جملة حتى نهاية الـ Transaction

أنصحط بمراجعه الـMSDN حتى تتعرف على تقنيات الاغلاق

http://msdn.microsoft.com/library/default....con_7a_1hf7.asp

When all else fails, read the instructions.

If there is a possibility of several things going wrong the one that will cause the most damage will be the one to go wrong.

No Matter how many times you repeat, there will be someone not listening .

To beat the bureaucracy, make your problem their problem

55926083.png

#7

بالنسبة للتأخير و لا يهمك

و سوف احاول مراجعة ذلك الرابط

وشكرا يا اخ IUnknown علي الاهتمام :)

هذا الموضوع مغلق.

مواضيع مشابهة