Arabic Introduction To - PL-SQL
Arabic Introduction To - PL-SQL
الفصل الول
QS/LP مدخل إلى لغة
6 كتاب تصميم قواعد البيانات PL-SQL
المقدمة :
تعتبر اللغة PL/SQLهي لغة البرمجة في نظام أوراكل ،وهي أداة برمجية قوية ،وكلمة PL/SQL
اختصارًا لـ ) ،( Procedure Language/Structure Query Languageوتستخدم هذه اللغة لتجهيز
نظام Oracleعن طريقة معالجة التسجيلت ،وتستخدم أيضًا في أدوات التطوير المنتجة من قبل شركة
، Oracleوهي تعتبر أساس برنامج بناء النماذج Oracle Formsو . Oracle Reportsوتستخدم هذه
اللغة أيضًا لتعريف نموذج ما ،والقيام ببعض الحسابات الخاصة في تقرير ما ،ومن أجل التسجيلت .
----------------------------------------------------------------------------------------------------
)Data تجميع جمل SQLمعًا في بلوك واحد ) كتلة واحدة ( وإرسالهما إلى خادم -1
(Baseلتنفيذها دفعة واحدة مما يؤدي إلى ارتفاع مستوى الداء عامة .
يمكن لـ PL/SQLالعمل داخل أي جزء من أجزاء وأدوات Oracleوبذلك يضيف قوة -2
المعالجة الجرائية إلى هذه الدوات ) ، ............، (Oracle Forms) ،(Oracle Reportsمما
يؤدي إلى تحسين مستوى الداء .
تطوير البرنامج Modularizedوذلك بـ : -3
-3إتاحة تقسيم المشاكل المعقدة إلى مجموعة أبسط من المشاكل يمكن حّلها ببساطة .
الستفادة من خبرات وأكواد سابقة بجمعها في شكل مكتبات ) (Librariesيمكن الستفادة -4
يمكن تعريف المتغيرات والمتحولت ) (Variablesالتي تستقبل العديد من أنواع البيانات -6
المختلفة مثل الرقام والنصوص والصور والفيديو والبيانات المركبة ....الخ .
7 كتاب تصميم قواعد البيانات PL-SQL
-7وتحتوي أيضًا على المميزات الخرى مثل أوامر التكرار والتحكم في سير البرنامج ومعالجة
الخطاء والستثناءات وووووو....الخ .
----------------------------------------------------------------------------------------------------
فالبرنامج السابق يتألف من كتلة ترميز بلغة PL/SQLتحتوي على تعليمة واحدة ُ .تظهر الرسالة )
. (Hello
8 كتاب تصميم قواعد البيانات PL-SQL
تتكون كتل ترميز PL/SQLمن تعليمات ،وكل تعليمة تنتهي بفاصلة منقوطة . -
يتم وضع ) (/في نهاية كتلة ترميز PL/SQLلتنفيذ تعليمات كتلة الترميز . -
تعتبر الكلمة المفتاحية ) (ENDهي الكلمة المفتاحية الوحيدة في كتلة ترميز -
SQL *Plusباستخدام الكلمة المفتاحية ) (STARTأو الرمز )@( .وهذا النوع من الكتل
البرمجية تسمى ) إجرائيات كتل مجهولة ( .والشكل العام لستخدام هذه الكلمة المفتاحية :
مسار الملف \اسم الملف .المتداد START
9 كتاب تصميم قواعد البيانات PL-SQL
DECLARE
جزء التصريح والتعريف( هنا يتم وضع المتغيرات وتعاريف المؤشرات والستثناءات(
BEGIN
)هنا يتم وضع التعليمات التي سيتم تنفيذهـا )جزء التنفيذ
EXCEPTION
جزء الستثناءات( هنا يتم وضع الستثناءات(
;END نهاية الكتلة البرمجية( هذه الكلمة يجب وضعها في نهاية كتلة الترميز لنهاء الكتلة(
/ )وهذا الرمز يتم وضعه لتنفيذ كتلة الترميز )تنفيذ الكتلة البرمجية
تعليمات الستثاء
----------------------------------------------------------------------------------------------------
11 كتاب تصميم قواعد البيانات PL-SQL
العنوان .
يتم استخدام الكلمة المفتاحية ) (GOTOثم وضع اسم العنوان المراد القفز إلى هناك بعد ) -2
. (GOTO
ملحوظة :
س /ما المقصود بتعريف العناوين الذي أشرنا إليه في الفقرة رقم واحد ؟
ج /تعرف العناوين بأنها وسائل تستخدم لوضع علمات لمقاطع كتلة الترميز .
الشرح :
عند بداية تنفيذ البرنامج يحصل
الجملة التالية )(goto middle
فيذهب إلى المقطع )(middle
وينفذ التعليمات ثم يحصل الجملة
التالية ) (goto topفيذهب إلى
المقطع ) (topوينفذ التعليمات ثم
يحصل الجملة التالية
) (goto bottomفيذهب إلى
المقطع ) (bottomثم يحصل
كلمة ) (endفينهي البرنامج .
ملحوظة :
12 كتاب تصميم قواعد البيانات PL-SQL
يوصي العديد من الخبراء في هذا المجال بعدم استخدام التعليمة ) ، (GOTOفهي تجعل فقدان
ل .وهي للستخدام في بعض الحالت النادرة التي يمكن أن تجعل البرنامج
السيطرة على التطبيقات أمرًا سه ً
أسهل وأبسط .
التعليقات :
كأي لغات البرمجة الخرى يمكن إدخال التعليقات ضمن كتلة الترميز ،ويوضع المبرمج مثل هذه
التعليقات لتسهيل أمره وقت مراجعته وتطويره للبرنامج بعد فترة زمنية ،ول تؤثر هذه التعليقات في حجم
البرنامج أبدًا .ويوجد أداتان لكتابة هذه التعليقات :
-1لكتابة تعليق سطرًا واحدا ً:يتم وضع إشارتي ناقص ) (--في بداية السطر الذي نرغب بوضعه
كتعليق .
ولكتابة تعليق عدة أسطر :يتم وضع الرمز ) (*/في بداية التعليق ،ووضع الرمز )* (/في -2
-2ما هو الرمز المستخدم في كتابة تعليق لسطر واحد فقط ؟ وما هو الرمز المستخدم في كتابة عدة أسطر؟
________________________________________________________________
________________________________________________________________
-3أكتب كتلة برمجية يتم فيه طباعة النص التالي ) (Welcome To PL/SQL؟
15 كتاب تصميم قواعد البيانات PL-SQL
الفصل الثاني
المتغيرات والثوابت
16 كتاب تصميم قواعد البيانات PL-SQL
شرحها لحقًا ،و من خللهما يمكن تعريف متغير حسب نوع عمود أو صف في قاعدة البيانات مما
يتيح قدر كبير من المرونة دون التقيد بنوع معين من البيانات .
شروط تسمية المتغيرات :
اسم المتغير يجب أن يبدأ بحرف . -1
يمكن أن يحتوي اسم المتغير على حروف وأعداد أو شرطة سفلية أو الحرف . $ -2
ل يحتوي اسم المتغير على رموز خاصة . -3
ل يحتوي اسم المتغير على مسافات . -4
ل يكون اسم المتغير ضمن السماء المحجوزة في اللغة مثل ... Declare, for, ifالخ. -5
;)summary number(3,2 فهذا المتغير طوله 3منها عددان إلى اليمين بعد الفاصلة العشرية
ملحوظة :
* يتم إعطاء قيمة افتراضية للدقة مقدارها . 38
;)Job char(3
;)Name varchar2(30
;)(X char
ملحوظة :
تحتوي التعاريف من النوع charفراغات في المواضع غير المشغولة . -1
ل يمكن اعتبار الفراغات والقيم الفارغة نفس الشيء وحتى ل يمكن إجراء أي مقارنة بينهما . -2
يعتبر الطول الفتراضي عندما ل يتم تحديد الطول لنمط البيانات charهو ، 1والطول -3
العظمي هو .32767
19 كتاب تصميم قواعد البيانات PL-SQL
يجب تحديد الطول عند تعريف متغير لنمط البيانات ، varchar2والطول العظمي هو -4
. 32767
تسمح اللغة بتعريف متغيرات من النماط charو varchar2بأطوال أعظمية أكبر . -5
حاولت تعليمة ما نسب قيمة فارغة إلى المتغير ،سيحدث خطأ .
نسب قيم للمتغيرات :
توجد طريقتان لنسب القيم للمتغيرات في لغة : PL/SQL
معامل النسب ) (=:مثل : -1
متغير من نوع مؤشر ،وبدون معرفة المواصفات لبيانات العمود أو المؤشر .
يستطيع المطّور إعداد المتغيرات لمؤشر ما أو تسجيلة جدول بتعليمة واحدة .وستمتلك -2
المتغيرات نفس المواصفات للجدول أو متغيرات المؤشر .
* الخاصية أو الداة ): (TYPE%
تعتبر الداة ) (TYPE%أول أداة لتعريف متغير مجموعة ،والتي تسمح بتعريف متغير بنفس
مواصفات عمود جدول بقاعدة البيانات ،والشكل العام للتعريف بهذه الداة :
; VARIABLE_NAME TABLE_CURSOR_NAME.COLUMN_NAME%TYPE
اسم العمود ; %TYPEاسم المتغير اسم الجدول أو المؤشر
ل على ذلك :
وفي ما يلي نأخذ مثا ً
كتلة برمجية لعرض اسم الموظف وراتبه من جدول الموظفين ) ، (EMPبحيث يكون رقم الموظف
يساوي . 7782
21 كتاب تصميم قواعد البيانات PL-SQL
جملة الطباعة في السطر الثامن يختلف عن السابق فعند طباعة قيمة متغير يجب وضع اسم -2
ل:
المتغير ثم نقطة ثم اسم العمود في الجدول كالشكل التالي مث ً
;) DBMS_OUTPUT.PUT_LINE ('Name: ' || x.ename
23 كتاب تصميم قواعد البيانات PL-SQL
ملحوظة :
ل واحدًا فقط ،وإذا استرجع أكثر من سجل سيحدث
كل ما سبق تسمى المؤشرات الضمنية ،وتسترجع سج ً
خطأ .
كتلة برمجية تسترجع اسم الموظف وراتبه واسم القسم الذي يشتغل فيه وطباعته ،بحيث يكون -2
كتلة برمجية يتم فيه طباعة اسم الموظف ووظيفته الذي يحمل الرقم ) . (7782ولكن باستخدام -3
لـــ . ..........................................................................
القيمة الفتراضية من نمط البيانات ) (CHARعندما ل يتم تحديد الطول .4
هو . ................
..........الطول الكامل للقيمة ،و ........................عدد الرقام الممكن وضعها إلى يمين .5
أو يسار الفاصلة العشرية .
.......................يستخدم للبيانات البولية أو المنطقية . .6
DATEيستخدم لــ . ....................................... .7
اكتب كتلة برمجية لحساب عدد الموظفين في جدول الموظفين ) (EMP؟ -2
اكتب كتلة برمجية تقوم فيه تعريف متغيرين من النوع الرقمي وتنسب قيمة للول )(50 -3