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

تعديل زناد trigger


maher1215

Recommended Posts

السلام عليكم
ارجو قبولي كعضو جديد في موقعكم هذا
واحب الاسفسار
بصفتي مبتدئ
عن الزناد
عملت زناد أمس واريد تعديله اليوم كيف يمكنني مراجعته ورؤيته داخل sql
أي اريد عرضه فحسب
وشكرا

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

مشكورين شباب
خلاص مشي الحال
بعد ما تعذبت وبحثت بكل الموقع
وبكل المواقع العربية
وبكل الكتب والدروس اللي مريت عليها
ماحصلت طلبي
بعديت رحت على البحث باللغة الانكليزية ومن اول صفحة لقيت الحل والحل هو

SQL> select trigger_name from USER_TRIGGERS
 2  ;
الجملة السابقة لرؤية الزنادات المنشاة
TRIGGER_NAME
------------------------------
INSERTNEW

الزناد الذي أنشاته

SQL> set long 100000; حجز كمية كافية لعرض الزناد
SQL> select DESCRIPTION, TRIGGER_BODY
 2  from user_triggers
 3  where trigger_name='INSERTNEW';

DESCRIPTION
--------------------------------------------------------------------------------
TRIGGER_BODY
--------------------------------------------------------------------------------
insertnew


وهذا هو الزناد

before insert on emp for each row

begin if inserting then
   insert into local(sn,name,br_date,passno,national)
  values  (:new.id,:new.name,:new.br_date,:new.passno,:new.national);
  insert into jobsal(sn,name,job,salary,time)
 values (:new.id,:new.name,:new.carer,:new.salary,:new.time);
 end if;

DESCRIPTION
--------------------------------------------------------------------------------
TRIGGER_BODY
--------------------------------------------------------------------------------
 end;

واريد التعديل في حالة الأب ديت أو الديليت

SQL> أرجو الاهتمام ببعض الامور التي تبدو برأيكم تافهة

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

وهذا زناد الحذف

create or replace trigger deleteone
after delete on emp for each row
 begin
if deleting then
delete from local
where local.sn=:old.id;
delete from jobsal
where jobsal.sn=:old.id;
end if;
end;
/


وهذا زناد التعديل

     create or replace trigger updatenew
    	after update on emp for each row
     begin
 if updating then
  update local
  set
 local.sn=:new.id,
 local.name=:new.name,
 local.br_date=:new.br_date,
 local.passno=:new.passno,
 local.national=:new.national
where local.sn=:new.id;
update jobsal
set
 jobsal.sn=:new.id,
 jobsal.name=:new.name,
 jobsal.job=:new.carer,
 jobsal.salary=:new.salary,
 jobsal.time=:new.time
  where jobsal.sn=:new.id;
	end if;
     end;
/


ويمكن دمج الثلاثة بزناد واحد مع اداة الشرط if
يعني تعبئة ورشاً ودراكاً بزناد واحد ؟؟؟؟؟؟؟؟؟؟؟؟!!!!!!!!!!!!!!!

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

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

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

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

×   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.

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

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

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