الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

The Public Synonym

مغلق
بدأه MAJEDA AL-HAMADNEH في 6 نوفمبر 2001 · 1 رد · 702 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

لدي تساؤل حول الPUBLIC SYNONYM

اذا قام مستتخدمين بعمل PUBLIC SYNONYM WITH THE SAME NAME

BUT FOR DEFFERENT STRUCTURE TABLES

الذي حصل ان آخر USER قام بانشاء PUBLIC SYNONYM

هو الذي استطعت عمل ACCESS FOR IT'S SYNONYM

لماذا ..؟

أيضا أذا أردت أن احدد THE PRIVILAGE OF THE PUBLIC SYNOYM

أو عمل REVOKE FROM USER HAD FULL ACCESS ON THIS SYNONYM

عفوا .. لدي تساؤلات حول كيفية التعامل مع PUBLIC

وما هو دوره في ORACLE ARCIHITICTURE

IS IT A USER ..A PUBLIC AREA WITH SPECIFIC DESCRIPTION

انا اعتمد عليكم في الاجابة ..ولكم جزيل الشكر لتعاونكم واهتمامكم

شكرا جزيلا

السلام عليكم

#2

هناك نوعيين من الـsynonym وهي:

1.private

2.public

الأولى تكون خاصة بالمستخدم نفسه وتابعة له مثل :

لو أعطيت المستخدم الذي اسمه ahmed صلاحية على الجدول s_emp عن طريق المستخدم المالك لهذا الجدول وهو scott

فإن المستخدم ahmed لابد من ان يستخدم scott.s_emp عند كل عملية على هذا الجدول وللتسهيل عليه بدل من ذكر اسم الجدول مسبوقا باسم المستخدم فإنه يقوم بإنشاء synonym بلأمر التالي :

create synonym s_emp for scott.s_emp

وبعد الآن لا يحتاج الى ان يسبق اسم الجدول بإسم المستخدم كما ان اسم الsynonym لابد ان لايكون مطابقا لاسم اي من الجداول لدي المستخدم احمد.

اما الثانية:

فهي ببساطة كأن تعطي جميع المستخدمين الحاليين أو الذين سيتم إنشاءهم فيما بعد صلاحية على جدول معين مثل

لو أردت ان يكون جدول s_Emp لدي كل المستخدمين الصلاحية عليه

فما عليك سوى تنفيذ الأمر التالي:

create public synonym s_emp for s_emp

مع ملاحظة ان اسم الsynonym ليس شرطا ان يكون مطابقا لاسم الجدول.

وكذلك يمكن انشاء synonym على ال view وال package وال procedure وال function

هذا الموضوع مغلق.

مواضيع مشابهة