الانتقال إلى المحتوى

كيف اقدر اعمل تريجر على الجدول لتعديل بيانات فية


moon14sun14

Recommended Posts

مرحبا



عندي سؤال محيرني

عندي جدول لبيانات الموظفين ومن ضمن هذه البيانات يوجد حقل لمجموع الاجازات المتوفرة لكل موظف

اريد اضيف تريجر لهذا الجدول بحيث انه يعدل قيمة حقل مجموع الاجازات المتوفرة في 1/9 من كل سنة


كيييييييييف اقدر اطبق هالفكرة


ياريت حد يساعدني

رابط هذا التعليق
شارك

هو المفروض أصلاً مفيش حقل تجميعي للأجازات المتبقية للموظف خلال سنة معينة ، لأن دة بيكون حقل محسوب وليس حقل مُخَزَن !!!

لكن هفرض أن هناك حالة خاصة لذلك !!!!

هفرض أن هناك حقل يدعي EMP_BALANCE ، كيف يمكننا إجراء تعديل علية من الـ TRIGGER !!!

CREATE OR REPLACE TRIGGER TRG_BEFORE_EMP BEFORE UPDATE ON EMP
FOR EACH ROW
DECLARE
  ID_BALANCE  NUMBER(20,3);
BEGIN
  ID_BALANCE := <جلب عدد أيام الأجازة السنوية> - <عدد الأيام المستهلكة>;
  :NEW.EMP_BALANCE := ID_BALANCE;
END;
/




بالتوفيق

رابط هذا التعليق
شارك

شكرا لكم على الردود

بس يا اخ MMA

اناعدلت على الكود اللي رسلتة لي حسب البيانات الموجودة عندي بهذا الشكل


CREATE OR REPLACE TRIGGER TRG_BEFORE_STAFF BEFORE UPDATE ON HR_STAFF_DEATILS
FOR EACH ROW
DECLARE
ID_BALANCE NUMBER(3);
BEGIN
ID_BALANCE := (LEAVE_TOTAL + 54) ;
: HR_STAFF_DEATILS .LEAVE_TOTAL:= ID_BALANCE;
END;


HR_STAFF_DEATILS TABLE NAME

LEAVE_TOTAL COLUMN WHICH SHOULD UPDATE

54 THE STAFF TOTAL LEAVE IN EACH YEAR


بس حبيت اعرف هذا التريجر راح يكون على الجدول صح؟

طيب كيف احدد انة هذا التعديل يتم في تاريخ محدد ومعين وهو 1/9 من كل سنة وليس في اي وقت


انا ارفقت الدسكربشن تبع الجدول

HR_STAFF_DEATILS_TABLE.doc

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية