الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

الدرس الحادي عشر:انشاء البروسجير على قاعدةالبيانات

Featured Replies

بتاريخ:

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

الدرس الحادي عشر .....

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]
هنا نعرف الباراميتر المختلفة والتي نستطيع استخدامها للبروسيجر

BEGIN
executable_section
هنا نهئ البروسيجر لنبدأ بعملية ال SELECT او القايم بجمع او طرح او غير ذلك

[EXCEPTION
exception_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 ?

انتهى الدرس


الدرس العاشر ..... القائمة الرئيسية .... الدرس الثاني عشر

  • بعد 1 شهر...
بتاريخ:

مشكور اخى الفاضل واتمنى منك مزيد العطاء وجازاك الله خيرا وشكرا لهذا الموقع الاكثر من رائع ومزيد من التقدم
MDSALAH

  • بعد 4 شهور...
بتاريخ:

أعانك الله لفعل الخير صدقة جارية ان شاء الله
أخوك من الجزائر سليمونو <_<

بتاريخ:

يا انته يا ابداعاتك يا بطل

مشكور حبيبي

  • بعد 1 شهر...
بتاريخ:

بارك الله فيك اخي اسامة و اتمنى من الله ان يتم عليكم بثمرة هذا العمل و تحمل أمانة العلم

  • بعد 1 شهر...
بتاريخ:

الله يعطيك العافية جهد جبار
لاحرمت اجره استاذي الفاضل

  • بعد 9 شهور...
بتاريخ:

يعطيك العافيه

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.