كيف يمكنني تجنب قراءة الأقفال في قاعدة البيانات الخاصة بي ؟
-
09-06-2019 - |
سؤال
كيف يمكنني تجنب قراءة الأقفال في قاعدة البيانات الخاصة بي ؟
إجابات عن قواعد بيانات متعددة مرحبا!
المحلول
في أوراكل الوضع الافتراضي من العملية هو قراءة المرتكبة مستوى العزل حيث حدد البيان لا يتم حظر من قبل المعاملة آخر تعديل البيانات هو القراءة.من البيانات التزامن والتناسق:
كل استعلام تنفيذها من خلال صفقة يرى إلا البيانات التي ارتكبت قبل الاستعلام (غير المعاملة) بدأت.Oracle الاستعلام لم يقرأ القذرة (غير ملتزم) البيانات.
نصائح أخرى
في SQL Server يمكنك استخدام مع(nolock) الكلمة في تحديد البيانات.على سبيل المثال:
Select table1.columna, table2.columna
from table1 with(nolock), table2 with(nolock)
تأكد من تحديد مع(nolock) لكل جدول/عرض في الاستعلام.
جيف أتوود لديه وظيفة جيدة في هذا الموضوع:
في فايربيرد الكتاب لم كتلة القراء وليس هناك أي القذرة-يقرأ.قراءة فقط-ارتكبت و لقطة مستويات العزل.
ويستخدم متعددة الأجيال المحرك (مثل أوراكل أعتقد) بدلا من صفحة بسيطة أو تأمين السجل.
كيو يستخدم أيضا MVCC (نسخة متعددة التزامن التحكم) ، وذلك باستخدام الافتراضي مستوى عزل المعاملة (قراءة-ملتزم), يجب أن لا كتلة ، إلا شخص القيام maintainace على ال DB (اسقاط / إضافة أعمدة / طاولات / الفهارس / الخ).