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

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

اريد طريقة انشاء Trigger على قاعدة البيانات


3 رد (ردود) على هذا الموضوع

#1 hani993

hani993

    عضو

  • الأعضــاء
  • 14 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 18 March 2006 - 10:18 PM

السلام عليكم ورحمة الله وبركاته،،،
أتمنى أحد يعرف طريقة انشاء Trigger على قاعدة البيانات لتسجيل بيانات تسجيل الدخول والخروج من قاعدة البيانات ، علما بأنني حاولت إنشاءها على المستخدم SCOTT ، لكن عند تسجيل الدخول من قبل شخص أخر (مثل : SYSTEM) فإنه لا يتم تسجيل بياناته على الجدول .

#2 ABUSANAD

ABUSANAD

    عضو نشط

  • الأعضــاء
  • 202 مشاركة

تاريخ المشاركة 18 March 2006 - 11:02 PM

السلام عليكم ورحمة الله وبركاته, الجواب يااخي العزيز هو كالاتي :-
اولا صناعة جدول مثال
CREATE TABLE T_USER(USER_NAME VARCHAR2(15), USER_DATE DATE) ;
بحيث يقوم الجدول بتخزين اسم المستخدم والتاريخ.
ثانيا نقوم يكتابة زنادين يقومان بتسجيل الدخول مع الخروج كالاتي :-
تسجيل الدخول
CREATE OR REPLACE TRIGGER connect_user
AFTER LOGGON ON DATABASE -- This DATABASE will record any user you use to connect to the database whether SCOTT or SYSTEM
BEGIN
INSERT INTO t_user VALUES(USER, SYSDATE) ;
END ;
/
تسجيل الخروج
CREATE OR REPLACE TRIGGER dissconnect_user
BEFORE LOGGOUT ON DATABASE
BEGIN
INSERT INTO t_user VALUES(USER, SYSDATE) ;
END ;
/
ارجوا من الله-تعالى- ان تكون الاجابة شافية و وافية
أخوكم المحب
احمد العولقي
OCP Developer 9i

#3 oracle_itself

oracle_itself

    عضو نشط

  • فريق الإشراف
  • 365 مشاركة
  • الاسم الأول:Wael
  • اسم العائلة:Abdeen
  • البـلـد: Country Flag
  • المنصب الحالي:Manager

تاريخ المشاركة 20 March 2006 - 03:01 PM

مثالين صغيرين جدا عشان الفهم السريع

create trigger insert_ledger_cash
before insert on high_customer_cash
for each row
begin
update ledger
set tot_money=nvl( tot_money,0)+:new.CASH_AMOUNT;
end;
/

create trigger update_ledger_cash
before update on high_customer_cash
for each row
begin
update ledger
set tot_money=nvl( tot_money,0)-:old.CASH_AMOUNT;
update ledger
set tot_money=nvl( tot_money,0)+:new.CASH_AMOUNT;
end;
/

هذا و الله اعلم
Oracle ITself

WAEL ABDEEN: Assistant Manager / Data Mgmt. Analyst

profile: linkedin profile

blog: waelabdeen.blogspot.com

facebook: facebook profile

skype: oracle_itself

email: oracle_itself@hotmail.com


#4 eng_2007

eng_2007

    عضو

  • الأعضــاء
  • 36 مشاركة

تاريخ المشاركة 27 March 2006 - 12:45 AM

السلام عليكم

طيب هل ممكن عمل triger يقوم بتسجيل كلمه مرور مستخدم عندما يعمل تغيير على كلمه مروره؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟