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

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

صورة
- - - - -

ماهى مشكله هذا PROCEDURE محير جداااااااا


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

#1 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 02 December 2009 - 03:13 AM

CREATE OR REPLACE PROCEDURE create_table (table_name VARCHAR2 , column VARCHAR2)is
stmt VARCHAR2(200) ;
BEGIN stmt := 'CREATE TABLE ' || table_name|| '(' || column ||')' ;
EXECUTE IMMEDIATE stmt ;
END;
/
show errors

BEGIN create_table (table_name => 'mostfa' , column => 'id NUMBER(4) PRIMARY KEY, name VARCHAR2(40)' );
END;

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة


#2 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,558 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 02 December 2009 - 10:41 PM

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

اقترح عليك اظهار رسالة الخطأ التى تظهر لك ... حتى يمكن معرفة سبب الخطأ

البروسيدر تم تصميمه ليستقبل متغيرين اثنين فقط

بينما عند استدعاؤة للتنفيذ تم تحريك 3 متغيرات

عرف متغير ثالث فى البرويسيدر


تمت التجربه وكانت كالتالى ( متغيرين اثنين )

SQL> BEGIN create_table (table_name => 'mostfa' , column => 'id NUMBER(4) PRIMARY KEY');
2 end;
3 /

PL/SQL procedure successfully completed.

SQL> desc mostfa;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)

SQL>


or
1  BEGIN create_table ('mostfa1' , 'id NUMBER(4) PRIMARY KEY');
2* end;
SQL> /

PL/SQL procedure successfully completed.

SQL> desc mostfa1;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....


#3 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 03 December 2009 - 12:30 AM

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

اقترح عليك اظهار رسالة الخطأ التى تظهر لك ... حتى يمكن معرفة سبب الخطأ

البروسيدر تم تصميمه ليستقبل متغيرين اثنين فقط

بينما عند استدعاؤة للتنفيذ تم تحريك 3 متغيرات

عرف متغير ثالث فى البرويسيدر


تمت التجربه وكانت كالتالى ( متغيرين اثنين )

SQL> BEGIN create_table (table_name => 'mostfa' , column => 'id NUMBER(4) PRIMARY KEY');
2 end;
3 /

PL/SQL procedure successfully completed.

SQL> desc mostfa;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)

SQL>


or
1  BEGIN create_table ('mostfa1' , 'id NUMBER(4) PRIMARY KEY');
2* end;
SQL> /

PL/SQL procedure successfully completed.

SQL> desc mostfa1;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)







اخى الفاضل السلام عليكم ورحمه الله وبركاته
لك جزيل الشكر على اهتمامك
ولكان انا عند استدعاؤة للتنفيذ تم تحريك 2 متغيرات فقط لان امتغير التانى هو VARCHAR2 وانا وضعه كانها متغير واحد 'id NUMBER(4) PRIMARY KEY, name VARCHAR2(40)' وليس اتنين
عشان عند التنفيذ يظهر الجمله كالتى
CREATE TABLE mostfa (id NUMBER(4) PRIMARY KEY,name VARCHAR2(4)d
ارجو الافاده وجزالك الله خير

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة


#4 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,558 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 03 December 2009 - 12:44 AM

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

تم اعادة التجربه ... باعتبار ان المتغير الثاني سيحتوى مجموعه من الاعمدة المختلفة ... وتم التنفيذ بنجاح ايضا
مع ملاحظة اننى غيرت اسم الجدول الى mostfa2
لان جدول Mostfa موجود من قبل ويجب عمل اسقاط له اولا drop table

SQL> BEGIN create_table (table_name => 'mostfa2' , column => 'id NUMBER(4) PRIMARY KEY, name VARCHAR2(40)' );
2 end;
3 /

PL/SQL procedure successfully completed.

SQL> desc mostfa2;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)
NAME VARCHAR2(40)


فما هى المشكلة او رسالة الخطأ التى تظهر لك

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....


#5 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 03 December 2009 - 12:49 AM

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

تم اعادة التجربه ... باعتبار ان المتغير الثاني سيحتوى مجموعه من الاعمدة المختلفة ... وتم التنفيذ بنجاح ايضا
مع ملاحظة اننى غيرت اسم الجدول الى mostfa2
لان جدول Mostfa موجود من قبل ويجب عمل اسقاط له اولا drop table

SQL> BEGIN create_table (table_name => 'mostfa2' , column => 'id NUMBER(4) PRIMARY KEY, name VARCHAR2(40)' );
2 end;
3 /

PL/SQL procedure successfully completed.

SQL> desc mostfa2;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(4)
NAME VARCHAR2(40)


فما هى المشكلة او رسالة الخطأ التى تظهر لك



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

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة


#6 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 03 December 2009 - 12:58 AM

جربت تانى ونفس المشكله ورساله اهى
ERROR at line 1:
ORA-01031: insufficient privileges
ORA-06512: at "HR.CREATE_TABLE", line 4
ORA-06512: at line 2
وجزاك الله خير

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة


#7 Amgad

Amgad

    مشرف عام ومشرف قسم تحليل النظم

  • الفريق الإداري
  • 4,558 مشاركة
  • الاسم الأول:امجد
  • اسم العائلة:حلمي
  • البـلـد: Country Flag
  • المنصب الحالي:Business Systems Analyst at al Fanar Co. Riyadh KSA

تاريخ المشاركة 03 December 2009 - 01:24 AM

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

معنى هذه الرسالة انك عند الدخول على المستخدم hr
وهذا المستخدم ليس لديه صلاحية على امكانيه ... انشاء جداول create tables

يمكنك التجربه على مستخدم اخر وليكن scott وكلمة السرtiger
فهذا المستخدم تعليمي ولديه كل الصلاحيات

أو

الدخول على المستخدم الرئيسي system وكلمة السر manager
واعطاء صلاحية للمستخدم hr لانشاء الجداول بأمر
grant create table to hr;

بافتراض انك لم تغير كلمات السر اثناء تنزيل الاوراكل على جهازك

يجب ان تتعرف على كيفية التعامل مع رسائل الأخطاء والبحث عن الحلول من الكتب او النت ... مهم جدااااا

لا إله إلا الله الحليم الكريم
لا اله إلا الله العلى العظيم
لا اله إلا الله رب السماوات السبع و رب العرش العظيم
‏اللهم ارزقني قبل الموت توبة وعند الموت شهادة وبعد الموت جنة
اللهم ارزقني حسن الخاتمة
اللهم هون علينا سكرات الموت ... ونور علينا قبورنا
اللهم ارزقني الموت وأنا ساجد لك يا ارحم الراحمين
اللهم ثبتني عند سؤال الملكين
اللهم اجعل قبري روضة من رياض الجنة ولا تجعله حفرة من حفر النار
اللهم اني اعوذ بك من فتن الدنيا
اللهم ارحم ابائنا وامهاتنا واغفر لهما وتجاوز عن سيئاتهما وادخلهم فسيح جناتك ... والحقنا بهما يا رب العالمين
اللهم ارحم موتانا وموتى المسلمين واشفي مرضانا ومرضى المسلمين
اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الأحياء منهم والأموات
وبارك اللهم على سيدنا محمد صلى الله عليه وسلم
اللهم آمين ... اللهم آمين ... اللهم آمين


....


#8 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 03 December 2009 - 01:32 AM

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

معنى هذه الرسالة انك عند الدخول على المستخدم hr
وهذا المستخدم ليس لديه صلاحية على امكانيه ... انشاء جداول create tables

يمكنك التجربه على مستخدم اخر وليكن scott وكلمة السرtiger
فهذا المستخدم تعليمي ولديه كل الصلاحيات

أو

الدخول على المستخدم الرئيسي system وكلمة السر manager
واعطاء صلاحية للمستخدم hr لانشاء الجداول بأمر
grant create table to hr;

بافتراض انك لم تغير كلمات السر اثناء تنزيل الاوراكل على جهازك

يجب ان تتعرف على كيفية التعامل مع رسائل الأخطاء والبحث عن الحلول من الكتب او النت ... مهم جدااااا





جزاك الله خير وجعله فى ميزن حسناتك
اخى الكربم
انا بغمل جدوال علىhrبصيغه العاديه
وجربته على السكوت طلع نفس الرساله انا بكره ان شالله هجرب على جهاز تانى وهرد على حضرتك
جزالك الله خير وزادك من علمه وفضله

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة


#9 mostfa_future

mostfa_future

    عضو مميز

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

تاريخ المشاركة 04 December 2009 - 02:48 AM

اخى الافاضل لقد قمت بالتى كما نصحتنى
الدخول على المستخدم الرئيسي system وكلمة السر manager
واعطاء صلاحية للمستخدم hr لانشاء الجداول بأمر
grant create table to hr;
واشتغل السوال الاخير
انا كنت بعمل الجدوال على hr من غير مادى صلاحيت hr , scott
بطريقه العاديه جملهه CREATE TABLE mostfa (id NUMBER(4) PRIMARY KEY,name VARCHAR2(4)
هل عمل الجدوال بدينمك pl لازم ادى صلاحيات ارجو التوضيح !!!!!!!!!!!!!!!!!
وجزالك الله خير

لا تحسبن المجد تمرا أنت اكله *** لن تبلغ المجد حتى تلعق الصبر


صورةصورة