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

مشكله عويصه بعد تعريف مستخدم

مغلق
بدأه marwan_62 في 30 ديسمبر 2002 · 7 رد · 1,502 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

ارجو منكم المساعده, فقد قمت بتعريف مستخدم جديد من خلال system

وأعطيت له صلاحيات من خلال sys , وأيضا صلاحيه على v_$session

لكن المشكله, عند تشغيل النظام من خلال المستخدم الجديد يظهر انه لا يتعرف على الملفات, حيث تظهر الرساله التاليه:

عند عمل query الرساله :- frm-40505: unable to perform query

عند عمل report الرساله :- ora-00942: table or view does not exist

ارجوكم ساعدوني فانا بأمس الحاجه للمساعده فالشغل متعطل والمستخدم لا يزال ينتظر للعمل على النظام من فتره.

التوقيع : ما كل ما يتمنى المرء يدركه تأتي الرياح بما لا تشتهي السفن

مروان حسن من الاردن

#2

ما هي الصلاحيات التي اعطيتها لهذا المستخدم؟؟ وما هي الاستفسارات التي فشل من تشغيلها ؟؟؟ فيجب عليك اعطاء الصلاحيات اللازمة في الجداول المعنية لهذا المستخدم، فلو فرضنا ان الجداول هي لمستخدم اسمه ABC وتريد اعطاء صلاحيات كاملة في جداوله للمستخدم XYZ يجب عليك ان تعمل هذه الصلاحية على مستوى الجداول، ويمكنك عمل ذلك بتكوين أوامر تلقائيا عن طريق هذه الأمر وبعد الدخول في المستخدم ABC

SELECT 'grant all on '||tname||' to XYZ;'

يجب عليك عمل SPOOL للنتيجة والتي تكون عبارة عن أوامر من ال SQL ثم تشغيلها ببساطة

#3

السلام عليكم ورحمة الله وبركاته,

الاخ الكريم السني أود الاشاره الى موضوعي "مشكله عويصه بعد تعريف مستخدم" فالصلاحيات التي قمت باعطائها للمستخدم الجديد هي كما أوضحت لي "grant all on table_name to user_name " .

لكن أود أن أسأل كيف نعمل spool للمستخدم من sql , فقد دخلت على sql*plus من خلال حساب المستخدم الجديد وقمت بعمل التالي:

select * from tab لكن أعطاني الرساله "no rows selected " أي انه لم ينعرف على grant التي أعطيته إياها على tables من الحساب اللي يملك الجداول وبالتالي لا يشتغل النظام أي لا يعمل execute_query فتظهر لك الرساله الاولى كما في الرساله السابقه, ولا يعطي تقرير بعد تشغيل report

نسيت أن أقول لك أنه قد أعطيت للمستخدم صلاحية connect, resource من system من ضمن الصلاحيات اللي أعطيتها للمستخدم في المره الماضيه, أرجو أنه لم أكن قد أطلت عليك.

فهل هناك حل برأيك , وجزاك الله كل خير

وبارك الله فيك وأسأل الله أن يتم التواصل ضمن المنتدى الرائع في كل شيء.

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

"وقل اعملوا فسيرى الله عملكم ورسوله والمؤمنون"

صدق الله العظيم

#4

طبيعي إذا لم تقم يتكوين جداول على هذا المستخدم ان لا يجد شيء للعرض، ولنفترض كما في المثال السابق أن لديك مستخدمين ABC and XYZ وانك قمت بإعطاء صلاحيات كاملة للمستخدم XYZ في ملفات ABC فعندما تريد عرض ملف معين يجب عليك كتابة التالي وانت على المستخدم XYZ

ABC.

فلو فرضنا ان ABC يمتلك ملف بالإسم PERSONAL_FILE وعملت صلاحية كاملة للمستخدم الآخر على هذا الملف، فيمكنك الدخول من هذا المستخدم وعمل الامر التالي

select * from ABC.PERSONAL_FILE

وبهذا تري مكونات الملف وهو في موقعه، من الموقع الآخر

#5

السلام عليكم ورحمة الله وبركاته,

جربت وعملت من خلال sql*plus :select * from marwan.emp;

فأعطى نتائج مثل ما اتفضلت , لكن كيف نعكسه على برامج النظام. حتى

جربت أيضا كل جملة select أن اكتب marwan "اسم مالك الجداول" قبل اسم الجدول كما في أعلاه على أحد البرامج فأعطى في حالة execute_query الرساله :frm-40505 :unable to perform query

وفي حالة برنامج report يعطي : ora-00942 : view does not exist عندما نشغل برنامج التقرير .

لا أعرف ربما يكون في شيء ناقص حتى يكون المستخدم لا يقدر يتعرف على الجداول.

فهل هناك أي حل أرجوكم.

وجزاكم الله كل خير.

#6

اخي الكريم عندما تبني ال db_block in the form

امامك اختيارات

tables

views

synonyms

other users

current_user

تستطيع عمل view on the user.table for querying

او تستطيع عمل synonym on the user.table

وبناء ال db_block على هذا الأساس

لكن يجب التأكد من حالة unable to perform query

حاول عرض ال errors من خلال شاشة ال form

press shift+f1

or show errors from the menue

واقرأ ماهي طبيعة ال errors

واخبرني ماذا يحصل معك!!!!!!!!!!!!!!!!!!!

#7

Brother Marwan

Do this:

grant select to user

where user is the user you want to grant him/her the select privilage.

this it should solve the problem

Salam

#8

السلام عليكم

اخي marwan_62

ارجوا ان تراجع موضوع الامن في الديفلوبر .. وسوف تجد الطريقه الصحيحه لانشاء

مستخدم جديد ومنحه الصلاحيات اللازمه لكي يتمكن من رؤيه واستخدام الجداول

الاخري .

http://www.arabteam2000.com/vb/showthread....&threadid=15055

عمر باعقيل

كندا - مونتريال

baaqeel@msn.com

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

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