بتاريخ: 19 أبريل 200619 سنة comment_66791 السلام عليكم ورحمة الله وبركاتهالدرس الحادي عشر .....Creating Proceduresيقصد بها هو انشاء اجراء معين على قاعدة البيانات بحيث تطبق تعليمة معينة او تستعلم تعليمة معينةقاعدة انشاء الProcedure CREATE [OR REPLACE] PROCEDURE procedure_name [ (parameter [,parameter]) ] IS [declaration_section] BEGIN executable_section [EXCEPTION exception_section] END [procedure_name]; ويمكن ان نشرحها بالشكل التاليCREATE [OR REPLACE] PROCEDURE procedure_nameهنا نقوم بعمل او تبديل الProcedure يعني نكتب CREATE OR REPLACE ثم نكتب PROCEDUREثم نكتب اسم الPROCEDURE وفائدة الREPLACE هنا لتبديل الPROCEDURE القديم بالPROCEDURE الجديد الذي نريد انشائه[ (parameter [,parameter]) ]هذه الجزئية هي عبارة الباراميتر الداخل او الخارج من البروسيجر حيث عند استخدام الباراميتر وتعريف نوعه نستخدم ثلاث حالات وهي IN وتعني قيمة الباراميتر الداخله للبروسيجر والغير مرتجعه بها القيمة .OUT وتعني قيمة الباراميتر الخارجة او الناتجة من البروسيجرIN OUT وهي القيم الداخلة والخارجة حيث يدخل الباراميتر بقيمة ويرجع بقيمة اخرىونحن نعرف ان البروسيجر ترجع القيمة باسم البروسيجر نفسهISوتعني التهيئة [declaration_section]هنا نعرف الباراميتر المختلفة والتي نستطيع استخدامها للبروسيجرBEGINexecutable_sectionهنا نهئ البروسيجر لنبدأ بعملية ال SELECT او القايم بجمع او طرح او غير ذلك[EXCEPTIONexception_section]تستخدم في حال لم ينفذ الشرط END [PROCEDURE_name];وهنا ننهي البروسيجر مع كتابة اسم البروسيجر ويجب ان يكون مطابق للأسم البروسيجرمثال على ماسبق CREATE OR REPLACE Procedure UpdateCourse ( name_in IN varchar2 ) IS cnumber number; cursor c1 is select course_number from courses_tbl where course_name = name_in; BEGIN open c1; fetch c1 into cnumber; if c1%notfound then cnumber := 9999; end if; insert into student_courses ( course_name, course_number) values ( name_in, cnumber ); commit; close c1; EXCEPTION WHEN OTHERS THEN raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM); END; هذا البروسيجر يأخذ رقم الكورس ويضيفه الى جدول الطلابويمكن استدعائه عن طريق التريجر مثلا وسوف نرى ذلك في الدرس القادم باذن اللهالاسئلة1- ما هي الفائدة من البروسيجر ؟2-كيف نستطيع تحديد نوع الباراميتر اذا كان داخل او خارج ؟3-قم بانشاء بروسيجر يقوم بجمع رقمين وارجاعهما في جملة SELECT ?انتهى الدرسالدرس العاشر ..... القائمة الرئيسية .... الدرس الثاني عشر تقديم بلاغ
بتاريخ: 2 يونيو 200619 سنة comment_71068 مشكور اخى الفاضل واتمنى منك مزيد العطاء وجازاك الله خيرا وشكرا لهذا الموقع الاكثر من رائع ومزيد من التقدم MDSALAH تقديم بلاغ
بتاريخ: 11 أكتوبر 200619 سنة comment_80616 أعانك الله لفعل الخير صدقة جارية ان شاء اللهأخوك من الجزائر سليمونو تقديم بلاغ
بتاريخ: 29 نوفمبر 200619 سنة comment_85111 بارك الله فيك اخي اسامة و اتمنى من الله ان يتم عليكم بثمرة هذا العمل و تحمل أمانة العلم تقديم بلاغ
بتاريخ: 12 يناير 200719 سنة comment_89066 الله يعطيك العافية جهد جبارلاحرمت اجره استاذي الفاضل تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.