كيفية التحقق مما إذا كان المشغل غير صالح؟

StackOverflow https://stackoverflow.com/questions/120900

  •  02-07-2019
  •  | 
  •  

سؤال

أنا أعمل على قواعد بيانات تحتوي على جداول متحركة يتم إنشاؤها تلقائيًا بواسطة بعض الأدوات الغامضة.بالمناسبة، يتعين علينا تتبع تغييرات المعلومات في الجدول عبر بعض المشغلات.وبطبيعة الحال، يحدث أن بعض التغييرات في بنية الجدول تؤدي إلى تعطيل بعض المشغلات، عن طريق إزالة عمود أو تغيير نوعه، على سبيل المثال.

إذن السؤال هو:هل هناك طريقة للاستعلام عن بيانات تعريف Oracle للتحقق مما إذا كانت بعض المشغلات معطلة، وذلك لإرسال تقرير إلى فريق الدعم؟

يقدم user_triggers جميع المشغلات ويخبرك إذا كانت ممكّنة أم لا، لكنه لا يشير إلى ما إذا كانت لا تزال صالحة.

هل كانت مفيدة؟

المحلول

SELECT *
FROM   ALL_OBJECTS
WHERE  OBJECT_NAME = trigger_name
AND    OBJECT_TYPE = 'TRIGGER'
AND    STATUS <> 'VALID'

نصائح أخرى

قم بإلقاء نظرة على SYS.OBJ$، وتحديدًا عمود الحالة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top