10-10-12, 01:49 PM
الجزء الثاني من stored proceduer والتعامل مع paramters
***ملحوظه في اخر الدوره سوف اشرح ازاي نا استعمل stored procduer في داخل اللغه vb.
net2005*****
احنا شوفنا في الجزء الاول ازاي اعمل بروسيدير وازاي استدعيه دلوقتي انا هاعمل شي اخر وهو انشر امثله توضح اهميته ولماذا يفضل استخدامه
المثال الاول مثلا وانا في الكويري لو عاوز اعمل جملة ادراج في احد الجداول وياسلام بقا لو ان المفروض ان المفروض هاعمل ادراج في اكتر من جدول مثلا في جدول الفواتير هاعمل فيه ادخال فاتوره جديده وفي نفس الوقت هاعمل تعديل في جدول المخازن يعني هاعمل حوالي 3 اسطر من الاوامر اولهم جملة select و تاني سطر تقليل كمية المخزون في جدول السلع في حقل الكميه المتوفره من السلعه التي تم بيعها وده بجملة update وفي الاخر ممكن نعمل جملة select لنعرض الناتج
طيب انا ممكن اعمل كل ده في سطر واحد وصغير ازاي انا هاشرح ده
ملحوظه مهمه بالنسبه للمبتدائين هيكون صعب عليهم الموضوع ده دلوقتي بس الي عاوز يكمل براحته
المهم هنفترض وجود الجدول ده وهو cust وهو بيعبر عن الموظفين وفيه الحقول دي (id -name-phone )
وده جدول تجريبي لتوضيح الفكره المهم انا هافترض ان الجدول ده عندك في القاعده
هانفتح الكويري وتكتب كود الانشاء ده
استخدم امر التشغل لينهي هذه العمليه
وشرحه هو اول سطر زي ماهو واضح احنا بدانا اوامر انشاء البروسيدير وبين القوسين عرفنا عدد من المتغيرات وهي @id ومعناها متغير نوعه integer
نلاحظ عند التصريح عن متغير يجب دائما ان يسبقه علامة @ وهو يدل ان هذا متغير
@name متغير نوعه char وهكذا حقل التليفون
طيب واحد هايسئل احنا وضعناهم بين قوسين ليه.... بمنتهي البساطه المتغيرات دي لازم تدخلها عند الاستدعاء وهنشوفها بعد شويه المهم في البروسيدير هاياخد المتغيرات دي
ويحطها في الجمل في مكانها نشوف كده
في جملة الادراج نلاحظ اننا في القيم اننا لم نضعها وانما وضعنا بدلا منها المتغيرات التي ادخلناها مع استدعاء البروسيدير نجرب للتوضيح الان نستدعي البروسيدير
نلاحظ بعد انشاء البروسيدير لو طلبت التنفيذ هيظهر خطا بسسب انه موجود قبل كده بعد ما تنشاه امسح الكود بتاعه من الكويري واكتب
ولاحظ النتيجه نلاحظ انه تم ادراج السجل الجديد وتم استدعاء امر select ليعرض النتائج طبعا كان ممكن نعمل اي عدد من الاوامر هنا
ملاحظه كلمة exec اختصار امر execute الذي تحدثنا عنه في المره السابقه
والاسلوب ده اسمه كتابة اسكربت sql
طيب دي نهاية الموضوع .....لا .. ياعم ا صبر افهم دول كويس والجاي يبقا اسهل
مثلا انا خلاص ذاكرت الي عده وفهمته انا عاوز اكمل...... الموضوع بسيط دلوقتي انا هدخل جمل if و جمل case with when
نلتقي في الدرس القادم
***ملحوظه في اخر الدوره سوف اشرح ازاي نا استعمل stored procduer في داخل اللغه vb.
net2005*****
احنا شوفنا في الجزء الاول ازاي اعمل بروسيدير وازاي استدعيه دلوقتي انا هاعمل شي اخر وهو انشر امثله توضح اهميته ولماذا يفضل استخدامه
المثال الاول مثلا وانا في الكويري لو عاوز اعمل جملة ادراج في احد الجداول وياسلام بقا لو ان المفروض ان المفروض هاعمل ادراج في اكتر من جدول مثلا في جدول الفواتير هاعمل فيه ادخال فاتوره جديده وفي نفس الوقت هاعمل تعديل في جدول المخازن يعني هاعمل حوالي 3 اسطر من الاوامر اولهم جملة select و تاني سطر تقليل كمية المخزون في جدول السلع في حقل الكميه المتوفره من السلعه التي تم بيعها وده بجملة update وفي الاخر ممكن نعمل جملة select لنعرض الناتج
طيب انا ممكن اعمل كل ده في سطر واحد وصغير ازاي انا هاشرح ده
ملحوظه مهمه بالنسبه للمبتدائين هيكون صعب عليهم الموضوع ده دلوقتي بس الي عاوز يكمل براحته
المهم هنفترض وجود الجدول ده وهو cust وهو بيعبر عن الموظفين وفيه الحقول دي (id -name-phone )
وده جدول تجريبي لتوضيح الفكره المهم انا هافترض ان الجدول ده عندك في القاعده
هانفتح الكويري وتكتب كود الانشاء ده
كود :
create proc proc2 ( @id int , @name char(40) , @phone char(20)) as
insert into cust values ( @id , @name , @phone )
select * from custاستخدم امر التشغل لينهي هذه العمليه
وشرحه هو اول سطر زي ماهو واضح احنا بدانا اوامر انشاء البروسيدير وبين القوسين عرفنا عدد من المتغيرات وهي @id ومعناها متغير نوعه integer
نلاحظ عند التصريح عن متغير يجب دائما ان يسبقه علامة @ وهو يدل ان هذا متغير
@name متغير نوعه char وهكذا حقل التليفون
طيب واحد هايسئل احنا وضعناهم بين قوسين ليه.... بمنتهي البساطه المتغيرات دي لازم تدخلها عند الاستدعاء وهنشوفها بعد شويه المهم في البروسيدير هاياخد المتغيرات دي
ويحطها في الجمل في مكانها نشوف كده
في جملة الادراج نلاحظ اننا في القيم اننا لم نضعها وانما وضعنا بدلا منها المتغيرات التي ادخلناها مع استدعاء البروسيدير نجرب للتوضيح الان نستدعي البروسيدير
نلاحظ بعد انشاء البروسيدير لو طلبت التنفيذ هيظهر خطا بسسب انه موجود قبل كده بعد ما تنشاه امسح الكود بتاعه من الكويري واكتب
كود :
exec proc2 '1','hamada','0163968865'ملاحظه كلمة exec اختصار امر execute الذي تحدثنا عنه في المره السابقه
والاسلوب ده اسمه كتابة اسكربت sql
طيب دي نهاية الموضوع .....لا .. ياعم ا صبر افهم دول كويس والجاي يبقا اسهل
مثلا انا خلاص ذاكرت الي عده وفهمته انا عاوز اكمل...... الموضوع بسيط دلوقتي انا هدخل جمل if و جمل case with when
نلتقي في الدرس القادم
