كيف تستخدم Nolock مع Tadoquery و Tadotable؟
سؤال
لدي نص SQL "SELECT * من TABLE1 مع (Nolock)".
سؤالين:
كيف أجعل tadoquery يستخدم تلميح Nolock دون الحاجة إلى تضمين ذلك في نص SQL؟ لدي حرفيًا الآلاف من Tadoquery مع SQL بنيت ديناميكيًا ، وسيكون من الصعب إضافتها مع (Nolock) إلى جميعهم ، ناهيك عن استخدامها مع منصات قاعدة البيانات بخلاف MSSQL. هل يوجد خاصية تادوكري؟
كيف يمكنني تحقيق نفس الشيء مع صراخ؟ Tadotable ليس لديه أي SQL ، فكيف أخبرها باستخدام تلميح Nolock؟
شكرًا
المحلول
إذا كنت تستخدم MS SQL ، فقم بتشغيل البيان أدناه مرة واحدة على الاتصال
تعيين مستوى عزل المعاملة قراءة غير ملتزم
ابتهج AP
نصائح أخرى
التلميحات هي قاعدة البيانات الخاصة ، وبالتالي عليك إصدار القصة المناسبة لكل قاعدة بيانات مدعومة. في بعض قواعد البيانات ، لا يوجد أي شيء مكافئ ، على سبيل المثال لا يسمح Oracle بأي شيء على حد سواء (القراء لا يمنعون كتابًا وكتابًا لا يحجبون القراء أبدًا ، وبالتالي لا حاجة).
IMHO يجب ألا تستخدم مكونات tadotable على الإطلاق - على أي حال ، ليس لديك طريقة لتحديد تلميح للاستعلام الذي تم إنشاؤه - وهو عام على أي حال.
كما يجب أن تكون جداً احرص على استخدام نولوك. وهذا يعني قراءة غير ملزمة ، ويعرف أيضا باسم القراءات القذرة. أنت تتجاوز حماية المعاملات ، وما لم يكن لديك سبب وجيه للغاية لتجاوزها ، فلا ينبغي عليك ذلك - فقد لا يكون المكسب في الأداء يستحق الخسارة في سلامة البيانات واتساقها.