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

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

صورة
- - - - -

دروس للمبتدئين في تعلم الPL/SQL


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

#1 عمر باعقيل

عمر باعقيل

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 543 مشاركة

تاريخ المشاركة 25 January 2004 - 12:16 AM

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

سوف أقدم هنا بإذن الله بعض الدروس للمبتدئين في تعلم الPL/SQL
وهي دروس كنت قد بدات بها بتعلم الPL/SQL أثناء دراستي للأوراكل

لنبدء على بركة الله :-

قم بتشغيل الSQL Plus وقم بتسجيل الدخول بالمستخدم scott مثلا .

في كل مره تريد ان تعمل على الPL/SQL من خلال الSQL Plus يجب ان تنفذ الكود
التالي مره واحده فقط وهو مسؤول عن ظهور نتيجه أوامر الPL/SQL التى ستنفذها .

" لو قمت بإقفال الSQL Plus وفتحته من جديد فستحتاج لتنفيذ الكود مره أخري"

والكود هو :-

set serveroutput on;


الدرس الاول :- لتقسيم قيمتين والحصول على النتيجه .

====================================
DECLARE
A NUMBER;
B NUMBER;
C NUMBER;
BEGIN
A:=10;
B:=5;
C:=A/B;
DBMS_OUTPUT.PUT_LINE(C);
END;
/
====================================
وستكون النتيجة كالتالي :-

2

PL/SQL procedure successfully completed.

عمر باعقيل
كندا - مونتريال
baaqeel@araboug.org
سبحان الله وبحمده , سبحان الله العظيم

#2 @رائد الغربيه@

@رائد الغربيه@

    عضو

  • الأعضــاء
  • 3 مشاركة

تاريخ المشاركة 25 January 2004 - 12:26 AM

السلام عليكم اخوي عمر ما شاء الله عليك على شرحك وعلى دروسك الاكثر من رائعه لا هنا ولا في منتدى الفريق العربي للبرمجه ما اقول غير ماشاء الله بس والف تحيه لك اخوي

#3 arab20002000

arab20002000

    عضو نشط

  • الأعضــاء
  • 257 مشاركة

تاريخ المشاركة 25 January 2004 - 12:48 AM

مشكور على الدرس

#4 ابوعبدالله

ابوعبدالله

    مشترك

  • الأعضــاء
  • 142 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Oracle HRMS

تاريخ المشاركة 25 January 2004 - 07:51 AM

جزاك الله خير يااستاذ عمر ونفعك بك والى الامام
(وماأوتيتم من العلم إلا قليلا)

Oracle9i Database Administrator Certified Associate

#5 Mazenkl

Mazenkl

    عضو

  • الأعضــاء
  • 38 مشاركة

تاريخ المشاركة 25 January 2004 - 12:06 PM

بسم الله الرحمن الرحيم
تحية طيبة وبعد
مشكور اخي العزيز على هه الدروس

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

#6 صلاح الثبيتي

صلاح الثبيتي

    عضو

  • الأعضــاء
  • 48 مشاركة

تاريخ المشاركة 25 January 2004 - 01:45 PM

مشكور و ان شاء الله نشوف سلسله كامله من دروس الـ SQL & PL/SQL

#7 ora

ora

    مشترك

  • الأعضــاء
  • 51 مشاركة

تاريخ المشاركة 25 January 2004 - 03:45 PM

اخوى عمر مشكور ع الدرس ... وبصراحه انا مبتدئه في البي ال اس كيو ال ... وعندي سؤال ..

set serveroutput on; ليش نحتاج نستخدم هالكوماند دايما ع الرغم انه في الاس كيو ال ماكنا نستخدمها ....!

DBMS_OUTPUT.PUT_LINE©;
هنيه انا فهمت انه DBMS_OUTPUT اوبجكت يمكنا من استخدام الفانكشن PUT_LINE فهل هناك طرق اخرى لاظهار الناتج غي هالطريقه ... ؟!

وسوري ع التطويل ..
اورا ..

#8 Guest_عادل الشهري_*

Guest_عادل الشهري_*
  • الزائرين

تاريخ المشاركة 25 January 2004 - 07:03 PM

الى الامام عمر :)


أخوك Oracle

#9 ابوعبدالله

ابوعبدالله

    مشترك

  • الأعضــاء
  • 142 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Oracle HRMS

تاريخ المشاركة 26 January 2004 - 07:13 PM

هيا ياأستاذ عمر نحن في إتتظار باقي الدروس :)

تم التعديل بواسطة عمر باعقيل, 27 January 2004 - 08:09 AM.

(وماأوتيتم من العلم إلا قليلا)

Oracle9i Database Administrator Certified Associate

#10 هانى سند

هانى سند

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 743 مشاركة

تاريخ المشاركة 26 January 2004 - 09:51 PM

الاخ العزيز عمر
وفقك الله و الي الافضل دائما
و بعد اذنك اريد ان اجاوب علي سؤال الاخت ora
بالطبع توجد عدة وسائل لاظهار الناتج
و لكن ليست في السكول بلس
و dbms_outputهي باكيدج من الاوراكل تستعمل لاغراض طباعة السطور علي الشاشة
و اذا كانت المشكلة في كتابة امر set serveroutput on
فانه يوجد ملف اسمه log in.sql ستجدونه في فولدر DBS بداخل فولدر الهوم للديفلوبر
يمكن في هذا الملف كتابة هذا الامر مرة واحدة فقط
حتي لا نضطر لكتابته مرة اخري عند بدء السكول بلس
و الله اعلم [/color]

تم التعديل بواسطة عمر باعقيل, 27 January 2004 - 08:10 AM.


#11 ora

ora

    مشترك

  • الأعضــاء
  • 51 مشاركة

تاريخ المشاركة 26 January 2004 - 10:54 PM

hanon_OCP la ... مشكور اخوى ع الرد ... وصراحه ماعندي خبره بالبي ال اس كيو ال ... فاحاول اربط بينه وبين البرمجه العاديه كالجافا والسي ++

#12 عمر باعقيل

عمر باعقيل

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 543 مشاركة

تاريخ المشاركة 27 January 2004 - 05:56 AM

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

الدرس الثاني :- لتغيير طريقة إدخال القيم المراد تقسيمها في كود الPL/SQL السابق
فقط مانحتاجه هو تنفيذ الكود من جديد مره واحده فقط " بعد التعديل عليه " وعن طريق أمر RUN أو R أو / وسيطلب منا إدخال القيم المراد تقسيمها وتظهر نتيجه التقسيم وسيصبح كود الPL/SQL كالتالي :-

DECLARE
A NUMBER;
B NUMBER;
C NUMBER;
BEGIN
A:=&A;
B:=&B;
C:=A/B;
DBMS_OUTPUT.PUT_LINE(C);
END;
/

ثم سيطلب منك إدخال القيمة الاولي , ومن ثم القيمة الثانيه من ثم Enter وستظهر نتيجة قسمة القيمتين ... ولتقسيم قيم جديد , فقط قم بكتابة RUN أو R أو / ومن ثم Enter وسيطلب منك إدخال القيمة الاولي , ومن ثم القيمة الثانيه من ثم Enter وستظهر نتيجة القسمه وهكذا .

عمر باعقيل
كندا - مونتريال
baaqeel@araboug.org

تم التعديل بواسطة عمر باعقيل, 30 January 2004 - 12:41 PM.

سبحان الله وبحمده , سبحان الله العظيم

#13 ابوعبدالله

ابوعبدالله

    مشترك

  • الأعضــاء
  • 142 مشاركة
  • البـلـد: Country Flag
  • الاهتمامات:Oracle HRMS

تاريخ المشاركة 30 January 2004 - 11:35 AM

للاستاذ عمر باعقيل كل عام وانتم بخير وعيدكم مبارك
وبالنسبه للدروس هل سيكون هناك معدل معين يعني درس كل يومين مثلا ام حسب ما يسمح به وقتكم
على كل حال نحن في شوق لبقية الدروس
اثابكم الله
(وماأوتيتم من العلم إلا قليلا)

Oracle9i Database Administrator Certified Associate

#14 عمر باعقيل

عمر باعقيل

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 543 مشاركة

تاريخ المشاركة 30 January 2004 - 01:26 PM

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

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

الدرس الثالث :- بالنسبه للكود السابق , نلاحظ انه لو قمت بتقسيم أي رقمين فإنه ستطهر لك
النتيجه بإذن الله وبدون مشاكل الا في حالة لو كان المقسوم صفر !!
مثلا لو قمنا بتقسيم 10 على صفر .. طبعا لا يمكن التقسيم بالصفر
طبعا بالكود السابق ستظهر لنا رسالة خطاء من اوراكل كالتالي :-

*
ERROR at line 1:
ORA-01476: divisor is equal to zeroB NUMBER;
ORA-06512: at line 8

هنا سنتقوم بالإضافه على الكود السابق ووضع Exception " إستثناء " به نظهر رساله خاصه بنا وبها نتفادي ظهور الError التى من أوراكل ونقوم نحن بتحديد محتوي الرساله على حسب رغبتنا " ممكن تكون الرساله بالعربي " , والكود سيصبح :-

DECLARE
A NUMBER;

C NUMBER;
BEGIN
A:=&A;
B:=&B;
C:=A/B;
DBMS_OUTPUT.PUT_LINE(C);
EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE(‘can't divide by zero’);
END;
/

ولكي تكون الرساله بالعربي :-

DECLARE
A NUMBER;
B NUMBER;
C NUMBER;
BEGIN
A:=&A;
B:=&B;
C:=A/B;
DBMS_OUTPUT.PUT_LINE(C);
EXCEPTION
WHEN ZERO_DIVIDE THEN
DBMS_OUTPUT.PUT_LINE('لا تستطيع التقسيم على صفر');
END;
/

عمر باعقيل
كندا - مونتريال
baaqeel@araboug.org
سبحان الله وبحمده , سبحان الله العظيم

#15 ammar

ammar

    عضو

  • الأعضــاء
  • 2 مشاركة

تاريخ المشاركة 30 January 2004 - 07:35 PM

سوف أرسل مجموعة من دروس pl/sql وهذا أول درس

ملفات مرفقة

  • ملف مرفق  les01.zip   114.93كيلو   908 عدد مرات التحميل