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

معرفة المستخدم الذي قام بالادخال


hrabee

Recommended Posts

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


وشكرا

تم تعديل بواسطة hrabee
رابط هذا التعليق
شارك

هناك نوعين من ال log أولا ممكن تكون أنت عامل بداخل الكود بتاعك جدول يتم من خلالة المتابعه
أو ممكن تختار من
v$sql
وتشوف كل ال sql الي تم كتابتها ومن أي جهاز

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

هناك نوعين من ال log أولا ممكن تكون أنت عامل بداخل الكود بتاعك جدول يتم من خلالة المتابعه
أو ممكن تختار من
v$sql
وتشوف كل ال sql الي تم كتابتها ومن أي جهاز


مكن يا اخي تضيف حقل الى الجدول خاص بالمستخدم الذي عمل الادخال
وتضيفه للبلك في الشاشه

وتكتب كود داخل الترايجر pre-insert تضيف المشتخدم الحالي الى الحقل.

ملاحظه

بامكانك ايضا اضافه حقل يهتم باخر مستخدم عمل ابديت update فيكون نفس الكلام السابق بس الترايجر يختلف الى pre-update

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

فكرة مبسطة
نفترض جدول EMP يتم الادخال به ونحن نحتاج أن نراقب العمليات عليه
مثلا نريد معرفة المستخدم و الوقت وأي سجل تعامل وأي تعامل ادخال تعديل حذف
الخطوات


1- ننشئ جدول للمراقبة في بيئة SQL

create table audit_emp_table(
USER_NAME VARCHAR2(10),
TIMESTAMP DATE,
ID NUMBER(4),
OLD_last_name VARCHAR2(20),
NEW_last_name VARCHAR2(20),
OLD_title VARCHAR2(10),
NEW_title VARCHAR2(10),
OLD_SALary NUMBER(7,2),
NEW_SALary NUMBER(7,2));
--------
2- نكون زناد المراقبة في بيئة SQL

create or replace trigger audit_emp_values
after delete or insert or update on emp
for each row
begin
insert into audit_emp_table(USER_NAME,TIMESTAMP,ID,OLD_last_name,NEW_last_name,
OLD_title,NEW_title,OLD_SALary,NEW_SALary)
values(USER,SYSDATE,:OLD.empno,:OLD.ename,:NEW.ename,:OLD.job,:NEW.job,:OLD.sal,
:NEW.sal);
end;
/

اي عملية تتم . يتم مراقبتها
جرب تنفيذ ذلك وبلغني

[email protected]

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

تقدر تعرف نوع العملية من خلال الجدول الذى قام بعملة mr ashrafsafty
ففى حالة insert هتلاقى البيانات موجودة فى new وعدم وجود بيانات فى old
اما فى حالة update هتلاقى البيانات موجودة فى new وايضا هتلاقى بيانات فى old
اما فى حالة delete هتلاقى البيانات موجودة فىoldوعدم وجود بيانات فى new


محمد ابوالعلا oracle developer

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

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

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

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

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

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

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

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