Contenu connexe
Similaire à Www.kutub.info 17040
Similaire à Www.kutub.info 17040 (20)
Www.kutub.info 17040
- 3. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
3
واإلس األكسس البيانات بقواعد شارب السي برامج ربط شرح الكتاب هذا في نتناول
النقطة هذه على ركزوا ولكن باإلكسس هو الشرح اغلب كان وان وحتى سرفر إل كيو
نص واختالف األسماء مجال اختالف هو القاعدتين مابين الشرح في البسيط التغيير أن
و االتصالا الشرح استخدام تستطيعسرفر إل كيو االس لغة في الكتاب هذا في لمقدم
السابقتين النقطتين بعد عليك فماالـ تتبع التي الكائنات اشتقاق تغير أن إال
(OLDEB( فئة ًالمث )OleDbConnectionبيانات قاعدة بإستخدام اإلتصال فئة هي )
إل كيو اإلس بيانات قاعدة استخدام عند انه واألختالف األكسس نوع مناننا سرفر
( كلمة نغيرOLDEB( بكلمة )SQL( هكذا سيصبح يعني )SQLConnectionكل وفي )
( بكلمة تبدأ الذي الفئاتOLDEB(بكلمة إستبدالها سوى علينا ما )SQL. )
وبالعربية مناهج وجود في صعوبة من القيته ما هو الكتاب هذا ألكتب دعاني ما إن
وأ اإلجراءات لهذه المبسط الشرح تقدمأي الكتاب هذا في كتبته ما من يستفيد أن رجوا
تراسلوني أن منكم ارجوا أسئلة أية هناك كان وأن تقصير أي عن وأعذروني شخص
. اإليميالت احد على
لكم امتناني
ُعسيبال حزام عبده محمد علي حمزة
حاسوب برمجة-اليمن
مقدمة
- 4. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
4
بدرس البسيطة دروسنا من درس أول سنبدأفي بسيطة بيانات قاعدة إنشاء كيفية
. األكسس
ثم البرامج كافة ثم ابدأ قائمة على نضغطMicrosoft OfficeثمMicrosoft
Office Accessوبعدأنعلى نضغط البرنامج واجهة لنا تفتح(بيانات قاعدة
فارغة)الصورة في كما
1/جديدة فارغة بيانات قاعدة
2/البيانات قاعدة تسميةباالسمتشاء الذي
3/المكان واختر استعراض على اضغط تنشئها سوف التي البيانات قاعدة حفظ مكان
الذيتريده
المثال هذا وفيأنااالسم استخدمتlesson7
على الضغط ثم ومنإنشاءليتمإنشاءبك الخاصة البيانات قاعدة.
-الواجهة هذه لنا تفتح
األكسس في مقدمة
- 5. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
5
1/على الضغط(عرض)الجديد الجدول تصميم إلظهار الشاشة يمين أعلى في
2/تريده الذي االسم اختر الجديد الجدول بتسمية نقوم أن منا يطلب.
وأناباالسم عليه بالتطبيق نقوم سوف الذي الجدول أسميت قدfriends
من نحتاج وكما نريد كما جدولنا بتصميم فنقوم التصميم صفحة لنا تفتح ذلك بعد
أعمدةوأنواعهاالبيانية
1/بتعبئة قمناأسماءاألعمدةاحتياجنا حسب لها البياني والنوع الجدول في
الصديق رقم واخترناأو(fri_no)مفتاح ليكونأساسي
2/على بالضغط البيانات ورقة عرض طريقة في الجدول لعرض نعود(عرض)
نعم على بالظغط بنوافق به ماقمنا حفظنا قد نكن لم ان الحفظ تريد هل لنا تظهر سوف.
باع الجدول لنا ليظهربالبيانات بتعبئتها نقوم البيانات من خالية مدته
األكسس في مقدمة
- 6. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
6
ًاتقريب هكذا الحفظ قبل شكلها ويكون بالحفظ بعدها ونقوم
االكسس برنامج نغلق.
األكسس في مقدمة
- 7. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
7
التي التقنية هذه عن األمور بعض نعرف ان يجب وطريقته الربط في ندخل ان قبل
تقنية وهي مايكروسوفت شركة ابتكرتهاado.netفي نستخدمها التي التقنية وهي
الربط عملية.
ما هناكلتقنية السبعة باألعمدة يسمىado.netاو كالسات وهي مايكروسوفت من
وهي المختلفة البيانات قواعد مع الواجهات برامج ربط بعملية للتحكم لنا تقدمها فئات
1.فئةاالتصال(connection. )
المخصصة الفئة وهيلالتصالوما البيانات قاعدة مسار فيحدد البيانات بقواعد
ذلك وغير المستخدم واسم كالتشفير وسائط من بذلك يتعلق.
2.األمر فئة(command.)
أوامر من ما أمر لتنفيذ المخصصة الفئة وهيSQLالمختلفة,إجراء أي أو
البيانات قاعدة إدارة نظام في مخزن.
3.البيانات قارئ فئة(Data Reader.)
المتصل النمط في البيانات قاعدة من فقط للقراءة تستخدم,يمكن والبيانات
الخلف إلى الرجوع يمكن وال األمام إلى قراءتها,وتعتبر االستعالم بفئة وذلك
ًاجد عالي أداء ذات.
4.مهيئ فئة(موصل)البيانات(Data Adapter.)
البيانات تعبئة على الفئة هذه تعملمجموعة إلى البيانات قواعد من المختلفة
معينة بياناتDataset,مجموعة على أجريت التي التعديالت بتنفيذ تقوم كما
البيانات قواعد على وعكسها البيانات من.
5.البيانات مجموعة فئة(Dataset.)
وتسمح الذاكرة في البيانات فيها تخزن البرمجية األنظمة من مجموعة هي
بإدارتها.تمكننا الذاكرة في موجودة صغيرة بيانات قاعدة عن عبارة وهي ًاأيض
جداول انشاء منال وهي بعالقات الجداول هذه وربطبيانات مصدر على تعتمد
محدد.
6.األمر باني فئة(CommandBuilder.)
الــ قبل من الفئة هذه تستخدمData Adapterالختياروتحديث وإدخال
البيانات قاعدة في السجالت وحذف,على ولكن األمر فئة بعمل تقوم الفئة فهذه
البيانات مهيئ نوع من فئة.
7.البيانات ربط فئة(Bindingsource.)
أداة خصائص بإحدى ما فئة خصائص إحدى قيمة لربط المخصصة الفئة وهي
معينة,و يتم بحيثضتلقا األداة خاصية قيمة عتغيرت كلما ئيا,والعكس...
في مقدمةado.net
- 8. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
8
واحدة خاصية كأنهما الخاصيتين تصبح وبإختصار.الفئة هذه استخدام أن أي
األداة خصائص إحدى محتويات ربط في(لمربع التابعة النص خاصية مثل
النص. )
تستطيع وال مهم فهو عنه نتحدث وأن البد آخر شيئا هناكأننفسك عن تقولأن
تقنية استخدام بإمكانكado.netوهي به معرفة بدون(providers)وهي
و البيانات قاعدة بين وسيطاتاالتصال(connection)وهيأنواعتعتمد
الربط في المستخدمة البيانات قاعدة نوع علىولنأتعمقًاكثير فيهافهو
بعض وسأذكر للمبتدئينأنواعها:
مزودالـSQL Serverالتالي بالشكل ويكتب
Provider=SqlOLEDB;
األكسس مزود
أكسس2003
Provider=Microsoft.Jet.OLEDB.4.0;
أكسس2007
Provider=Microsoft.ACE.OLEDB.12.0;
أكثر األمر لكم سيوضح التطبيق فإن جيد بشكل السابق تستوعبوا لم وإن حتى
الكالسات هذه من بعض وسنستخدم(الفئات)للربط األول مشروعنا في
ندخل وسوفإلىف بالذهن لتترسخ األخرى تلو واحدة الربط طرقبنا هيا.
في مقدمةado.net
- 9. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
9
-البرنامج واجهة في ستوديو الفيجوال نفتح
شارب السي بلغة جديد مشروع نفتح
File >> new >> project>>visual c#
>>windows>>windows form application
الواجهة هذه ونصمم
بعض بترقيم قمتاألدواتًاجيد الكود نفهم لكي أسماءها لكم ألكتب في المهمة.
1.نصي صندوق(textbox)بتسميته وقمنا(txt_no).
في بياناته عرض يريد الذي الصديق برقم المستخدم يقوم أن ألجل وهذا
النصية الصناديق.
يضع فهنا الجدول في األصدقاء احد بيانات في بالتعديل يقوم أن أراد إن ًاوأيض
الصنا في الجديدة البيانات بكتابة ويقوم رقمهديق.
2.زر(button)بتسميته وقمنا(btn_show1. )
الزر هذاصديق بيانات لعرضقد يكون محددفي رقمه ادخل(txt_no).
3.زر(button)بتسميته وقمنا(btn_del. )
في اسمه ادخل قد يكون محدد صديق بيانات لحذف الزر هذا(txt_no).
4.زر(button)بتسميته وقمنا(btn_add. )
يقوم الزر هذابإضافةالصناديق في المكتوبة البيانات من للجدول جديد صديق
الخمسة.
5.نصي صندوق(textbox)بتسميته وقمنا(txt_fri_no. )
الصديق رقم
المتصلة البيئة
- 10. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
01
6.نصي صندوق(textbox)بتسميته وقمنا(txt_fri_name. )
الصديق اسم
7.نصي صندوق(textbox)بتسميته وقمنا(txt_city. )
المدينة
8.نصي صندوق(textbox)بتسميته وقمنا(txt_mobile. )
الجوال رقم
9.نصي صندوق(textbox)بتسميته وقمنا(txt_job. )
الوظيفة
10.زر(button)بتسميته وقمنا(btn_upd. )
في المكتوب الرقم صاحب الصديق بيانات بتعديل الزر هذا يقوم1مستخدما
الصناديق في المكتوبة البيانات بذالك.
نبدأ اآلن
ان يجب بيانات وقاعدة برنامج مابين بالربط لنقوم ًالاوالخاص االسماء فضاء نضيف
في الكود نافذة في وتوجد المكاتب هو االسماء وفضاء البيانات قاعدة من النوع بهذا
ًاغالب منها نرى األعلى
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
System.Windows.Forms;using
بالبرنامج نستخدمها سوف التي البيانات بقاعدة الخاصة المكتبة نضيف وهنا
بتحديد نقومالتي المكتبةعليها نشتغل التي البيانات قاعدة نوع من.
الـ فيSQLServerالمكتبة نستخدم
using System.Data.SqlClient;
المكتبة نستخدم األكسس في
using System.Data.OleDb;
المتصلة البيئة
- 11. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
00
األكواد بكتابة سنبدأ اآلن
الكود نافذة إلى ندخلعلى بالضغطF7العام القسم إلى ًاوتحديد(public)
األكواد هذي وكتابة المتغيرات بتعريف نبدأ
public partial class Form1 : Form
{
1| OleDbConnection con = new
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=lesson7.accdb");
2| OleDbCommand cmd;
3| OleDbDataReader dr;
4| DataTable dt = new DataTable();
Form1()public
؟ األكواد هذه هي ما
1.الكالس من كائن باشتقاق قمناOleDbConnectionوأسميناهconالكالس وهذا
به الخاصة الباراميترات ومن البيانات بقاعدة االتصال بتنفيذ يقوم الذي هوانه
أوال أعطيناه أننا نرى الكود رأينا فلو البيانات قاعدة ومسار المزود يستقبل
البيانات بقاعدة الخاص المزودProvider=Microsoft.ACE.OLEDB.12.0;ومن
اكسس بيانات قاعدة استخدمنا اننا الواضح2007.
واسمها البيانات قاعدة مسار اعطيناه ثمSource=lesson7.accdbDataلم هنا ًاوطبع
البرنامج مسار في وضعناها ألننا باسمها واكتفينا البيانات قاعدة مسار لكتابة نحتاج
األساسيF:c#2014lesson7lesson7binDebug
2.فئة من كائن اشتققناCommandاألوامر وهيوأسميناهcmdنص سنحمله والذي
البيانات قاعدة من نحتاجها التي األوامر.
3.فئة من كائن اشتققناDataReaderواسميناه البيانات قارئ وهيdrلقراءة وهو
البيانات قاعدة من البيانات.
4.فئة من كائن اشتققناDataTableنستطيع فئة وهيأنجدولية قيم نحملهاوأسميناه
dt.
المتصلة البيئة
- 12. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
02
األدوات باقي في نبدأ اآلن
على بالضغط التصميم نافذة الى نعودSHIFT+F7
1.رقم الزر في2والذيبتسميته قمنا(btn_show1. )التالي الكود نكتب
2. try
3. {
4. cmd = new OleDbCommand("select * from friends where
fri_no=" +txt_no.Text +" ", con);
5. con.Open();
6. dr = cmd.ExecuteReader();
7. dr.Read();
8. txt_fri_no.Text = dr["fri_no"].ToString();
9. txt_fri_name.Text = dr["fri_name"].ToString();
10. txt_city.Text = dr["city"].ToString();
11. txt_mobile.Text = dr["mobile"].ToString();
12. txt_job.Text = dr["job"].ToString();
13. dr.Close();
14.
15. MessageBox.Show("تم العرض ");
16. }
17. catch (OleDbException xx)
18. {
19. MessageBox.Show("هناك خطأ ما " + xx.Message);
20. }
21. finally
22. {
23. con.Close();
}
من األسطر هو الكود هذا في المهم4الى13دوال واستخدمناtryوcatchلتفادي
الك نشرح تعالوا فقط اخطاء في الوقوعود.
4/الكائن حملناcmdفيه اشترطنا األمر ونص األتصال مفتاح و األمر نص
أنفي المدخل النص يساوي الصديق رقم يكون(txt_no)
5/فتحنااالتصالدالة باستخدامOpen();للكائن التابعةcon.
6/بطلبها قام التي البيانات أسندناcmdالبيانات لقارئdr
7/جعلdrالبيانات يقرأ.
8/أدخلناالخاصية فيTextالنصوص للصندوق(txt_fri_no)قمنا قيمة
من بأخذهاdrهذا الى البيانات منه سنأخذ الذي الحقل بتحديد وقمنا
باألمر الصندوق].ToString();"fri_no"[حيث]"fri_no"[الحقل اسم هي
هذا النصوص صندوق في بعرضها سنقوم الجدول فينكتب ان ونستطيع
نكتب أن نستطيع هنا ًالمث الحقل رتبة0نكتب بأخطاء الوقوع لتفادي ولكن
الحقل اسم.
البيئةالمتصلة
- 13. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
03
9/م فعلنا وكمابقية مع نفعل الصديق برقم الخاص النص صندوق ع
سيعرضه الذي الحقل هو ما نصي صندوق كل محددين الصناديق.
13/نقومبإغالق.االتصال
الزر الى ننتقل االنالثاني
رقم الزر في3والذيبتسميته قمنا(btn_del. )
األكواد هذه بكتابة نقوم
cmd = new OleDbCommand("delete from friends where fri_no=" + txt_no.Text + "",
con);
con.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("تم حذف بيانات الصديق رقم " + txt_no.Text);
األوا كائن بأعطاء قمنا األول السطر فيالصديق بيانات بحذف الالزم األمر مر
ال في المحدد الرقم صاحبالنص صندوق(txt_no)
األتصال مفتاح مع
يليه الذي بالسطر األتصال فتحنا ثم
ExecuteNonQuery(); الدالة بإستخدام األمر بتنفيذ قمنا ثم
ExecuteReader(); مثلها األمر لتنفيذ نستخدمها الدالة وهذهمثل
بينهما والفرقأننستخدمها األولىإذااألمر من مرتجعة بيانات هناك كانأما
عمليات مثل مرتجعة بيانات هناك يكون ال عندما نستخدمها فنحن الثانيةاإلضافة
والتعديل والحذف.
Try & Catch & Finally
جملةtryبين الموجود الكود ينفذ أن يجرب أن المترجم إخبار وهي حاول أو جرب هي بالمعنى
استخدام بعد ويجب األخطاء لتفادي لها التابعة الحاصرتينtryدالة استخدام يجبcatch
أن والخالصةtryبعد ثم تنفيذه تريد الذي الكود يكتب بينهما وما نهاية وحاصرة بداية حاصرة لها
قفلاستخدام يجب الحاصرةcatchكان إذا المترجم اليه ينتقل الذي الثاني الخيار بمقام تقوم وهي
داخل في الذي بالكود خطأ هناكtryوالـcatchالمراد الكود داخلها في يكتب حاصرتين لها ايضا
جملة تنفيذ يتم لم إذا تنفيذtryال حاصرة فتح قبل أيضا ونستطيعcatchاشتقاقمن كائنأي
الفئة من كائن باشتقاق قمنا المثال هذا وفي لنستخدمه كالسOleDbExceptionبمقام وهو
األس بلغة االستثناءكيالكائن واسمينا إل وxxجملة في وجعلناcatchالذي بالخطأ تخبرنا رسالة
الكائن في دالة واستخدمنا وقعxxجم ان هنا عرفنا . الرسالة نص لنا لتعرضال لةcatchاذا تنفذ
الـ جملة تنفذ لمtryالـ أماfinallyجمل تنفذت سواء الحالتين كلتا في جملها تنفذ دالة فهيtry
جمل اوcatch.
المتصلة البيئة
- 14. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
04
قمنا يليه الذي السطر وفيبإظهارويمك الحذف تم بأنه تفيد للمستخدم رسالةننا
بعدهإغالقاالتصالقمت ألني االتصال إغالق كود اكتب ولمبدوال استخدام
األخطاء من التفادي. فيها اإلغالق كود ووضعت
يلية الذي للزر ننتقل
وهو يليه الذي للزر ننتقلرقم الزر4والذيبتسميته قمنا(btn_add)هذا به ونكتب
الكود
try
{
(1) cmd = new OleDbCommand("insert into friends
(fri_no,fri_name,city,mobile,job) values ('" + txt_fri_no.Text + "','" +
txt_fri_name.Text + "','" + txt_city.Text + "','" + txt_mobile.Text + "','" +
txt_job.Text + "')", con);
(2) con.Open();
(3) cmd.ExecuteNonQuery();
(4) MessageBox.Show("تمت االضافة ");
}
catch (OleDbException xx)
{
MessageBox.Show(" خطأ " + xx.Message);
}
finally
{
con.Close();
}
للشرح اآلن
من األخضر باللون بترقيمها قمت الذي األسطر بشرح سأقوم1:4دوال اشرح ألن داعي فال
Try & Catch & Finallyفأعتقدإنكمًاسابق عنها تحدثنا فقد تعرفونها
1.الكائن بإعطاء ًاسابق قمنا كماcmdالـ أمرsqlمشروعنا في هو الذي االتصال مفتاح و
conبالـ الخاص اإلضافة أمر باستخدام قمنا السطر هذا في فعلنا وهكذاsqlنأخذ ولكي
( القيمvaluesدمج في نستخدمها الذي + العالمة نستخدم النصية الصناديق داخل من )
التركيز يجب ولكن بينها الربط او النصية السالسلوالمزدوجة األحادية التنصيصات على
هو والذي االتصال كائن بتسمية قمنا األمر وبعدcon.
2.االتصال فتحناcon.Open();.
3.الدالة باستخدام األمر بتنفيذ قمناcmd.ExecuteNonQuery();.
4.. اإلضافة تمت قد بأنه تفيد للمستخدم توضيحية رسالة بعرض قمنا
أنن الحظوانكتب لم اكوداال إغالقبكتابة قمنا ولكنا ؟؟ تصالدالة فيfinallyفي ستنفذ الذي
. األحوال جميع
المتصلة البيئة
- 15. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
05
ننتقل اآلنإلىالتالي الزر
رقم الزر وهو10والذيبتسميته قمنا(btn_upd. )التعديل بحفظ يقوم والذي
الكود هذا فيه ونكتب
try
{
cmd = new OleDbCommand("update friends set fri_no=" +
txt_fri_no.Text + ", fri_name='" + txt_fri_name.Text + "',city='" +
txt_city.Text + "',mobile=" + txt_mobile.Text + ",job='" + txt_job.Text + "'
where fri_no=" + txt_no.Text + "", con);
con.Open();
cmd.ExecuteNonQuery();
MessageBox.Show("تم التعديل ");
}
catch (OleDbException xx)
{
MessageBox.Show(" خطأ " + xx.Message);
}
finally
{
con.Close();
}
االضهافة لكهود كبيهرة بدرجهة مشهابة وههو مهره مهن اكثهر لهدينا تكهرر قهد انهه نرى الكود نرى عندما
هـهال هودهك هوهه هدهالوحي هتالفهواالخsqlهمهرق هقهوف هناديقهالص هنهم هدةهالجدي هيمهالق هعهبوض هومهيق هوهوه
. األول بالصندوق المكتوب الصديق
المتصلة البيئة
- 16. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
06
ما؟؟؟ المنفصلة والبيئة المتصلة البيئة هي
البيانات بقاعدة دائم اتصال على فيها نكون التي وهي المتصلة البيئة إطار في كان السابق الدرس
المنفصلة البيئة إمامن نسخة تأخذ وإنما البيانات بقاعدة دائم اتصال على ليست أي ذلك عكس فهي
الحاجة تتم ان إلى بها وتشتغل البيانات قاعدةلالتصال
؟؟ األداتين مايكروسوفت صممت ولماذا البيئتين من الفائدة ما
واستطعنا التقنية هذه أضافت عندما مايكروسوفت إنأنالوضع في البيانات قواعد مع نتعامل
. بيئتين هناك جعل من الفائدة وما لماذا لك سأشرح ًاجد كبيرة خدمة المنفصل
إنناويستخدمها واحدة بيانات وقاعدة محلي سرفر مع نتعامل نكون عندما المتصلة البيئة نختار
المتصل الوضع يكون وهنا واحد مستخدمأفضللالتصاللكنإنهنا كانألكثر تتاح شبكات ك
على بها تقوم الذي التعديالت كل المنفصل الوضع في انه أي البيانات قاعدة نفس على مستخدم من
الوقت وعند البيانات قاعدة وليس برنامجك داخل مؤقت وهمي جدول على تحفظ البيانات قاعدة
حفظها يتم الالزمإلىالبيانات قاعدة
البيئات اختالف
- 17. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
07
البيئةالمنفصلة
سواء سنحتاجها الذي المفاهيم بعض إلى لنتعرف بسيطة بجولة سنقوم المنفصلة البيئة تطبيقات في ندخل ان قبل
الـ تقنية في تدخل التي المفاهيم بعض وسأذكر المنفصلة او المتصلة البيئة في نتعامل كناado.net.
-( البيانات مجموعةData set)
األنظمة من مجموعة هي. بإدارتهها وتسهمح الهذاكرة فهي البيانهات فيها تخزن البرمجيةأيضها
وربهط جهداول إنشهاء مهن تمكننها الهذاكرة فهي موجهودة صهغيرة بيانهات قاعدة عن عبارة هي
. محدد بيانات مصدر على تعتمد ال وهي بعالقات الجداول هذه
الـ مكونات بعض ومنData set
البيانات جدول الفئةData Table:
في هيكله ببناء تقوم أن إما لجدول تمثيل عن عبارةDatasetبيانهات مصهدر من تأخذه أوويمكهن
تحتوي أنDataset. الجداول من محدد غير عدد على
البيانات أعمدة الفئةData Column:
.األعمدة مواصفات من ... الخ وطول واسم نوع له العمود هذا جدول داخل لعمود تمثيل عن عبارة
البيانات صفوف الفئةData Row:
الفئة في سجل الفئة هذا يمثلData Tableطريقته تؤمن حيثItem. حقوله قيم الى الوصول
األعمدة قيود الفئةData Constariat:
مثل ) األعمدة داخل البيانات بهيئة تتحكم ( األعمدة على توضع قيود
(Primary , Foreign , NULL , Constariat , Unique)
عالقات الفئةDataRelations:
. الجداول بين العالقات ) تحديد ( إنشاء خالله من نستطيع
مستعرضات الفئةData View:
. الكائن هذا خالل من أكثر أو جدول على يحتوي مستعرض إنشاء
: بعد فيما أو هذا درسنا في سواء سنحتاجها الذي والكائنات الخصائص بعض هنا وسنذكر
الخاصيةPosition:
نوع من تعريفة تم الذي المتغير تتبع وهي السجالت بين للتنقل نستخدمهاBindingManagerBase
.
الخاصيةDataBinding:
. فيه محتواه وعرض جدول في عمود مع كائن لربط الخاصية هذه تستخدم
الخاصيةBindingContex:
هـهال هعهم هةهالمرتبط هاتهالكائن هربطهل هتخدمهيسDatasetهقهطري هنهع هدولهالج هجالتهبس هتحكمهوال هدولهوالج
نوع من متغير استخدامBindingManagerBase.
BindingManagerBase:
هلهداخ هةهبالحرك هالتحكمهب هومهويق هاتهالبيان هةهومجموع هربطهال هاتهكائن هينهب هةهالعالق هيقهبتنس هومهيق هائنهك هوهوه
. السجالت
CurrencyManager:
عمل بنفس يقوم كائن وهوBindingManagerBase.
الخاصيةdisplayMemberلـ التابعةComboBox:
. الجدول من بحقل البيانات قاعدة ربط في تستخدم
المنفصلة البيئة
- 18. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
08
الخاصيةValueMemberلـ التابعةComboBox:
قيمة وهيDisplayMember. البيانات قاعدة إلى إرجاعها يتم سوف التي
الخاصيةDataSourceلـ التابعةComboBox:
. البيانات قاعدة اسم بتحديد تقوم طريقة وهي
األمر باني كائنCommandBuilder:
الـ قبل من يستخدم كائن وهوDataAdepterقاعهدة فهي السهجالت وحهذف وتحهديث وإدخال الختيار
. البيانات
الخاصيةInsertCommandلـ التابعةDataAdapter:
بالفئة خاصية وهيDataAdapterللفئهة كمرجع وتعتبرCommandBuilderيسهتخدمها والتهي
الـDataAdapterالـ وفئة البيانات قاعدة بين البيانات إلضافةDataset.
الخاصيةDeleteCommandلـ التابعةDataAdapter:
بالفئة خاصية وهيDataAdapterللفئهة كمرجع وتعتبرCommandBuilderيسهتخدمها والتهي
الـDataAdapterالـ وفئة البيانات قاعدة بين البيانات لحذفDataset.
الخاصيةUpdateCommandلـ التابعةDataAdapter:
بالفئة خاصية وهيDataAdapterللفئهة كمرجع وتعتبرCommandBuilderيسهتخدمها والتهي
الـDataAdapterالبيانا لتعديلالـ وفئة البيانات قاعدة بين تDataset.
الخاصيةSelectCommandلـ التابعةDataAdapter:
بالفئة خاصية وهيDataAdapterللفئهة كمرجع وتعتبرCommandBuilderيسهتخدمها والتهي
الـDataAdapterالـ وفئة البيانات قاعدة بين البيانات اختيار أو الستعالمDataset.
الوظيفةGetInsertCommandاألمر لباني التابعةCommandBuilder:
ههةهللفئ ههيةهخاص ههنهع ههارةهعب ههيهوهCommandBuilderههـهال ههنهم ههدةهالجدي ههجالتهالس ههافةهبإض ههومهتق
Datasetالـ على وإسقاطهاDataAdapter) مرجع ( الخاصية طريقة عنInsertCommand
.
الوظيفةGetDeleteCommandاألمر لباني التابعةCommandBuilder:
ههةهللفئ ههيةهخاص ههنهع ههارةهعب ههيهوهCommandBuilderههةهالمحذوف ههجالتهالس ههذفهبح ههومهتقههـهال ههنهم
Datasetههههههههـهال ههههههههىهعل ههههههههقاطهاهوإسDataAdapter) ههههههههعهمرج ( ههههههههيةهالخاص ههههههههةهطريق ههههههههنهع
DeleteCommand.
الوظيفةGetUpdateCommandاألمر لباني التابعةCommandBuilder:
للفئهة خاصهية عهن عبارة وهيCommandBuilderتعهديلها تهم التهي السهجالت بتعهديل تقهومالهـ مهن
Datasetههههههههـهال ههههههههىهعل ههههههههقاطهاهوإسDataAdapter) ههههههههعهمرج ( ههههههههيةهالخاص ههههههههةهطريق ههههههههنهع
UpdateCommand.
هاسهااللتب هيزيلهس هالتطبيقهفب هدهجي هكلهبش هابقهالس هتوعبواهتس همهل إن هىهوحت هحةهواض هورهاألم أن هدهاعتق
وتص والغموضسهتوديو الفيجوال برنامج إلى أخرى مرة نعود للتطبيق بنا هيا أكثر جلية األمور بح
: الواجهة هذه ونصمم جديد مشروع ننشئ
المنفصلة البيئة
- 19. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
09
: الواجهة شرح
. السابق التطبيق في كما هي الشمال جهة على النصية الصناديق
أداة هي اليمين جهة فيdataGridViewوأسميناها البيانات لعرض أداة
dataGridView1بالرقم بالصورة معنا الظاهرة وهي11.
األولى األزرار مجموعة
هي( من المرقمة األدوات1-4( أزرار هي )button)بين التنقل بعمليات للقيام وهي
( أداة داخل األزرار هذه وضعناها نحن ًاوأيض البيانات قاعدة بياناتgroupBox)
وأسميناهاgroupBox1بالرقم الصورة في معنا الظاهرة وهي12.
الثانية األزرار مجموعة
( من المرقمة األدوات هي5-7( أزرار هي )buttonاإلضافة بعمليات للقيام وهي )
أداة داخل األزرار هذه وضعناها نحن ًاوأيض البيانات قاعدة لبيانات والحذف والتعديل
(groupBoxوأسميناها )groupBox2بالرقم الصورة في معنا الظاهرة وهي13.
الثالثة األزرار مجموعة
(أرقامها التي األداتين هي8و9(أزرار )هيbuttonاإلضافة بتأكيدعمليات للقيام )وهي
أداة داخل األزرار هذه وضعناها نحن ًاوأيض البيانات قاعدة لبيانات والحذف والتعديل
(groupBoxوأسميناها )groupBox3بالرقم الصورة في معنا الظاهرة وهي14.
( رقم الزر10. البرنامج بإغالق يقوم الذي الزر وهو )
المنفصلة البيئة
- 20. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
21
؟ به نقوم ما أول ما س
به القيام علينا يجب ما أول أن شك الالتي المكتبة نحتاج وهنا نحتاجها التي المكتبة تعريف هو
وال أكسس البيانات قاعدة تخصتهي ي
using System.Data.OleDb;
التالي ونكتب العام القسم في الكائنات واشتقاق المتغيرات تعريف ونبدأ
public partial class Form1 : Form
{
نقومبتعريفجملةاالتصالكماسبقذكرهالقب//
OleDbConnection con = new
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=lesson7.accdb");
تعريفكائنمنفئةمنظمالبيانات//
OleDbDataAdapter da;
تعريفكائنمنفئةجدولالبيانات//
DataTable dt = new DataTable();
تعريفكائنمنفئةالعلقات//
BindingManagerBase bmb;
تعريفكائنمنفئةبانياألوامر//
OleDbCommandBuilder cmdb;
public Form1()
{
InitializeComponent();
}
( الحاويات داخل األدوات بعض وضعنا لماذا ًالسؤا سأسألكمgroupBox؟؟ )
األزرار فإن البرنامج اشتغال عند نريد أننا هو ألجله وضعناها الذي الغرض ولكن يمكن أجل ! صحيح للتنظيم
( رقم8و9العمليات بتأكيد يقومان الذي )ان نريد الإحدى المستخدم اختيار عند اال المستخدم على يظهرا
(اإلضافة العمليات–التعديل–الوضع يعود الزرين أحد على الضغط وعند األدوات بقية وتختفي ) الحذف
الخاصية سنجعل ولهذا السابقة للحالةEnabledلألداةgroupBox3=Falseداخل الدالة هذه ونكتب
: الحاجة عند سنستخدمها والتي البرنامج
void toolsShow()
{
groupBox1.Enabled = !groupBox1.Enabled;
groupBox2.Enabled = !groupBox2.Enabled;
groupBox3.Enabled = !groupBox3.Enabled;
}
وه. عليه هي ما على الحاويات تشغيل حالة بقلب تقوم استدعاءها عند الدالة ذه
المنفصلة البيئة
- 21. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
20
على بالضغط الواجهة تصميم واجهة إلى نعودSHIFT+F7نكتب اللود حدث في مرتين الفورم على ونضغط
: التالي الكود
private void Form1_Load(object sender, EventArgs e)
{
إعطاءكائنمنظمالبياناتجملةاإلسكيوإلااوإيضمفتاحاإلتصال//
da = new OleDbDataAdapter("select * from friends", con);
استخدامالدالةفيلمندوالكائنمنظمالبياناتلتعبئةمتغيرجدولالبيانات//
أيأنهبعدتنفيذالكودالسابقيكونمنظمالبياناتكأنهيحمل//
البياناتالراجعةمنقاعدةالبياناتونطلبمنهاهناتعبئتهاللجدولويمكننافعلالتاليباألمر//
//dt.load(da);
أيأننانجعلكائنجدولالبياناتيقومبتحميلالبياناتمنمنظمالبيانات//
da.Fill(dt);
وهنانقومبربطخاصيةمنخواصاألداةبحقلمعينمنحقولالجدول//
بإستخدامخاصيةDataBindingsوتستقبلالقيم بعضكباراميترات//
الباراميتراألولخاصيةاألداةالتيسنضيفاليهابياناتالحقوهنااستخدمناtext//
والثانياسمالجدولاومصدرالبياناتوالذيهوعندناdt//
والثالثهواسمالعمودفيالجدولالمحددوالذيهوعندناfri_no//
وهذايعنيأنناقمنابربطخاصيةالنصلصندوقالنصهذابالحقلالمحددفيالعمودرقمالصديقبالجدول
dt//
txtfri_no.DataBindings.Add("text", dt, "fri_no");
كماسبقإالانناهناربطناهبإسمالصديق//
txtfri_name.DataBindings.Add("text", dt, "fri_name");
وهذاربطناهبالمدينة//
txtcity.DataBindings.Add("text", dt, "city");
وهذابرقمالجوال//
txtmobile.DataBindings.Add("text", dt, "mobile");
وهذابالوظيفة//
txtjob.DataBindings.Add("text", dt, "job");
قمنابالربطبينالـbmbوالـdt//
اونستطيعالقولانناحددناللـbmbالكائنالذيعليهاالتعاملمعه//
bmb = this.BindingContext[dt];
قمنابتعبئةأداةعرضالبياناتببياناتالجدولdt//
dataGridView1.DataSource = dt;
}
!!! الجدول بيانات لنا عرض قد انه لترى البرنامج تشغيل تجرب ان يمكنك
األول الصديق بيانات يعرض والذي األول الزر على التصميم نافذة إلى نرجع اآلن و
الكود هذا فيه ونكتب
private void btnfrist_Click(object sender, EventArgs e)
{
جعلناموقعالـ= bmb0أياننانخبرهعنبياناتالصديقالذييحتلالرتبةصفر//
bmb.Position = 0;
}
المنفصلة البيئة
- 22. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
22
التالي الصديق بيانات يعرض والذي الثاني الزر على ونضغط التصميم واجهة إلى ونرجع
الكود هذا ونكتب
private void next_Click(object sender, EventArgs e)
{
زدناموقعالـbmbبنسبة1أياننانخبرهعنبياناتالصديقالذيااحالي المعروض الصديق يلي//
bmb.Position++;
}
بيانات يعرض والذي الثالث الزر على ونضغط التصميم واجهة إلى ونرجعالتالي الكود ونكتب السابق الصديق
private void btnprevious_Click(object sender, EventArgs e)
{
انقصناموقعالـbmbبنسبة1أياننانخبرهعنبياناتالصديقالذيااحالي المعروض الصديق يسبق//
bmb.Position--;
}
إلى نرجعالتالي الكود ونكتب األخير الصديق بيانات يعرض والذي الرابع الزر على نضغط التصميم واجهة
private void btnlast_Click(object sender, EventArgs e)
{
جعلناموقعالـbmb=بمقدار الجدول صفوف عدد من اقلاا//
bmb.Position = dt.Columns.Count - 1;
}
رقم الزر وفي5التالي الكود بكتابة نقوم اإلضافة بعملية يقوم والذي
private void btnAdd_Click(object sender, EventArgs e)
{
قمنابإخبارالمعالجاننانريداضافةبياناتجديدة//
bmb.AddNew();
استدعيناالدالةالتيقمنابكتابتهالتغييرحالةتشغيلاألزرار//
toolsShow();
}
رقم الزر وفي6األزرار تشغيل حالة تغيير دالة استدعاء كود إال نكتب ال التعديل بعملية يقوم والذي
رقم الزر وفي7ا الكود نكتب الحذف بعملية يقوم والذي: لتالي
private void btnDel_Click(object sender, EventArgs e)
{
وهذاالسطريقومبعرضرسالةللمستخدمتقوللههلانتمتأكدمنعمليةالحذف//
فإناختارنعمتحققشرطوتمتنفيذماداخلالحاصرتيناوباألصحتمتنفيذجملة// If
واناختارالتمالخروجمنالجملةوعدمحدوثايتغيير//
if (MessageBox.Show("هل انت متأكد من عملية الحذف ", "تأكيد الحذف ",
MessageBoxButtons.YesNo) == DialogResult.Yes)
{
إعطاءأمرالحذفبالدالةRemoveatوالتيتقومبالحذفحسبالموقعوتستقبلالموقعكباراميتر//
bmb.RemoveAt(bmb.Position);
نعطيهاألمربإنهاءالعمليةالحالية//
bmb.EndCurrentEdit();
حددنالبانياألوامرمنظمالبياناتالذيعليهالتعاملمعه//
cmdb = new OleDbCommandBuilder(da);
منظمالبياناتيقومبتحديثالبياناتالذيفيالـ// dt
da.Update(dt);
}
}
المنفصلة البيئة
- 23. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
23
رقم للزر ننتقل8الكود هذا ونكتب العملية تأكيد أو بحفظ يقوم والذي
private void btnSave_Click(object sender, EventArgs e)
{
نعطيهاألمربإنهاءالعمليةالحالية//
bmb.EndCurrentEdit();
حددنالبانياألوامرمنظمالبياناتالذيعليهالتعاملمعه//
cmdb = new OleDbCommandBuilder(da);
منظمالبياناتيقومبتحديثالبياناتالذيفيالـ// dt
da.Update(dt);
استدعيناالدالةالتيقمنابكتابتهالتغييرحالةتشغيلاألزرار//
toolsShow();
}
رقم للزر ننتقل9التالي الكود ونكتب العملية بإلغاء يقوم والذي
private void btnCancel_Click(object sender, EventArgs e)
{
نعطيهاألمربإلغاءالعمليةبإستخدامالدالة// CancelCurrentEdit();
bmb.CancelCurrentEdit();
استدعيناالدالةالتيقمنابكتابتهالتغييرحالةتشغيلاألزرار//
toolsShow();
}
تعرفون كما فقط البرنامج إغالق أمر فهو اإلغالق زر في أما
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
المنفصلة البيئة
- 24. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
24
الوضع في برنامجك في األدوات وخواص البيانات قاعدة بيانات مابين الربط يوضح هو السابق المثال
ادابتر الداتا نستخدم المنفصلة البيئة في أننا ًاجلي األمر أن اعتقد متصل الغيرغير يجعلنا الذي وهو
ال لم تساءل قد منكم العديد أن فيبدو ًاضروري ًالمثا لكم أضيف أن أريد المهم . البيانات بقاعدة متصلين
قائمة في بياناته عرض المراد للصديق المستخدم اختيار طريقة نجعلبوكس الكومبو أو بوكس الليست
م هي ذلك لتعلم الملحة الحاجة بل التساؤل ولهذابلمحة الموضوع هذا على بكم أمر أن أصر جعلتني ا
بنا هيا عليكم أطيل ال بأنفسكم تطوروها وبعدئذ أساسها وتفهموا الموضوع هذا عن فكرة لتأخذوا بسيطة
. المثال إلى
نريدإننصممبرنامجفيهكومبوبوكسيعرضلناأسماءاألصدقاءوعنداختيارناألحداألصدقاء
يعرضبياناتهفيصناديقنصية.
ستوديو الفيجوال برنامج في الواجهة هذه نصمم
الخاصية وفي بوكس الكومبو الى نذهبDropDownStyleنجعلهاDropDownListوذلك
. عليها المعروضة البيانات على التعديل لمنع باألصح أو فقط للقراءة لجعلها
فضاء كتابة وبعد الكود نافذة إلى ندخل ثمالمتغيرات تعريف إلى ننزل البيانات بقاعدة الخاص األسماء
: التالي الكود ونكتب العام الجزء في الكائنات واشتقاق
نقومبتعريفجملةاالتصالكماسبقذكرهالقب//
OleDbConnection con = new
OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=lesson7.accdb");
كائن إشتقاقفئةمنظمأوجالبالبيانات//
OleDbDataAdapter da;
تعريفكائنمنفئةجدولالبياناتليستقبلالبياناتالراجعة//
وهذاالذيسنستخدمهفيتعبئةالكومبوبوكس//
DataTable dt = new DataTable();
اشتقاقكائنآخرمنفئةجدولالبياناتليستقبلالبياناتالراجعة//
وهذاالذيسنستخدمةفيتعبئةالصناديقالنصية//
ألنهذاالجدولسيحملبياناتسطرواحدأماالسابقفهويحملبياناتعمود//
DataTable dt2 = new DataTable();
public Form1()
{
InitializeComponent();
}
المنفصلة في مقتطفات
- 25. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
25
اللود حدث إلى لننتقل مرتين الفورم على ونضغط التصميم نافذة إلى نعود اآلن ًاواضح الشرح أن أظن
: التالي الكود ونكتب الفورم تحميل حدث أي
private void Form1_Load(object sender, EventArgs e)
{
إعطاءكائنمنظمالبياناتأوجالبهاجملةاإلسكيوإلااوإيضمفتاحاإلتصال//
da = new OleDbDataAdapter("select * from friends", con);
/*
استخدامالدالةفيلمندوالكائنمنظمالبياناتلتعبئةمتغيرجدولالبيانات
أيأنهبعدتنفيذالكودالسابقيكونمنظمالبياناتكأنهيحمل
البياناتالراجعةمنقاعدةالبياناتونطلبمنهاهناتعبئتهاللجدولويمكننافعلالتاليباألمر
dt.load(da);
أيأننانجعلكائنجدولالبياناتيقومبتحميلالبياناتمنجالبالبيانات
*/
da.Fill(dt);
ثمنحددمصدربياناتالكومبوبوكسأنهامنالجدول//
comboBox1.DataSource = dt;
نحددالحقلالذينريدإظهارهفيالكومبوبوكس//
وهناحددناالحقلرقمالصديقبأستخدامخاصيةDisplayMemberللكومبوبوكس//
comboBox1.DisplayMember = "fri_name";
نكتباسمالحقلصاحبالمفتاحالرئيسيفيجدولاألصدقاءفيالخاصيةValueMemberللكومبوبوكس
//
comboBox1.ValueMember = "fri_no";
}
.وسترى التنفيذ جرب ! األصدقاء لجميع الصديق اسم العمود ببيانات بوكس الكومبو حملنا قد نحن اآلن
الى لندخل نقرتين بوكس الكومبو على وننقر التصميم نافذة إلى نعودحدثSelectedIndexChanged
: التالي الكود ونكتب لها
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
dt2.Clear();
da = new OleDbDataAdapter("select * from friends where fri_name='"
+comboBox1.Text + "'", con);
الشكاننانعرفاناإلستعلمالسابقيرجعلناسطرمنالبيانات//
وهناقمنابتعبئةالـdt2ببياناتهذاالسطر//
da.Fill(dt2);
/*
اآلننأتيألظهاربياناتالسطرالذيفيالجدولفيالصناديقالنصية
نحددالجدولثمنستخدمدالةRowsوهيدالةتحددالصفوتستقبلرتبةالسطر
ورتبةالسطرعندناهوالصفرإلناإلستعلمالسابقيجلبسطرواحدفقط
وتستقبلااإيضرتبةالحقلورتبةالحقلفيرقمالصديقهي1
ولكنلتفادياألخطاءنكتباسمالحقلأفضلمنرتبته
وعلىنفسالطريقةنكملباقيالصناديقالنصية
*/
txt_fri_no.Text = dt2.Rows[0]["fri_no"].ToString();
txt_fri_name.Text = dt2.Rows[0]["fri_name"].ToString();
txt_city.Text = dt2.Rows[0]["city"].ToString();
txt_mobile.Text = dt2.Rows[0]["mobile"].ToString();
txt_job.Text = dt2.Rows[0]["job"].ToString();
}
catch
{
return;
}
}
المنفصلة في مقتطفات
- 26. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
26
باستخدام المتصل بالبيئة منها طرق بعدة بوكس الليست او بوكس للكومبو بيانات إضافة ًاأيض ونستطيع
الطريقة بهذه ريدر الداتا
private void button1_Click_1(object sender, EventArgs e)
{
try
{
cmd = new OleDbCommand("select * from friends", con);
con.Open();
dr = cmd.ExecuteReader();
comboBox1.DisplayMember = "fri_name";
comboBox1.ValueMember = "fri_no";
while (dr.Read())
{
comboBox1.Items.Add(dr["fri_name"].ToString());
}
dr.Close();
MessageBox.Show("تم االضافة ");
}
catch (OleDbException xx)
{
MessageBox.Show("هناك خطأ ما " + xx.Message);
}
finally
{
con.Close();
}
}
المتصلة في مقتطفات
- 27. البيانات قواعد ربطAccessوSql serverالـ بلغةcتقنية باستخدام #ado.net
alzeerhamza@gmail.com@https://www.facebook.com/hamzawey2035
hamzaweynet@gmail.com@
27
يحوي ولكنه فقط مقدمة هو الكتاب هذا البداية في لكم قلت قد ولكني األشياء بعض في قصرت إذا أعتذر
اإليميالت احد على مراسلتي يرجى استفسار ألي تحياتي خالص وتقبلوا التقنية هذه في األشياء أهم
. القادمة الكتب في وانتظرونا
X
البعسي علي حمزه
اليمن - حاسوب برمجة
لم وان البرنامج مجلد داخل البيانات قاعدة نضع كنا كلها السابقة الدروس في أننا أنبهكم أن يجب
طيلة نفعل كنا كما البرنامج مسار في ولوضعها البيانات قاعدة موقع كتابة علينا يجب هناك تكن
( البرنامج مجلد نفتح السابقة الدروسbin( مجلد ندخل داخلة ومن )Debugلكي هنا ونضعها )
. البرنامج مسار في تكون
الفيجوال واجهة من تستطيعون انتم تكتبوها ال أن تريدون وإن( تبويب على الضغطData)
( واختيارAdd New Data Source( زر على الضغط ثم )Next( نضغط ثم )New
Connection( زر من ثم )Browserاستخدامها نريد التي البيانات قاعدة مكان نحدد ثم )
( ونضغطOpen( عليه مكتوب زر النافذة في لديك )Test Connectionنجاح الختبار )
ال ثم االتصال( على ضغطOK( اسم تحمل التي السابقة الواجهة لنا فتفتح )Data Source
Configuration Wizardعليها ومكتوب + عالمة عليها تفرع أداة األسف في نرى )
(Connection Stringهنا من نستطيع االتصال كود أسفلها لنا فيظهر + عالمة على نضغط )
ا نص تحديد مكان في ولصقه بنسخة نقوم أن. التصال
مالحظة