18-10-12, 03:29 PM
[b]كاتب الموضوع : Tarek Aldwire
--- السلام عليكم ورحمة الله وبركاته ---[/b]
--- السلام عليكم ورحمة الله وبركاته ---[/b]
أولا :
قم بإنشاء قاعدة بيانات وسمها mydatabase ( تم شرح الطريقة في الدرس 17 )...
ثم قم بإنشاء جدول بها وسمه mytable وضع فيه عواميد كالتالي...
ثم قم بإنشاء جدول بها وسمه mytable وضع فيه عواميد كالتالي...
العمود - الإسم - نوع البيانات
1 - FirstName - نصية nchar(10)
2 - Age - رقم bigint
1 - FirstName - نصية nchar(10)
2 - Age - رقم bigint
الان قم بعرض بيانات الجدول عن طريق RightClick من ال Mouse على الجدول ثم إختر Show Table Data ثم إبدأ بوضع البيانات كالتالي...
طارق - 15
إسمك - عمرك وهكذا ....
إسمك - عمرك وهكذا ....
ثانيا... ربط قاعدة البيانات مع ال c#,vb.net
أولا قم بإستيراد المجال:
System.Data.SqlClientالان ضع Button على الفورم وضع أيضا listbox ...
ثم إكتب في الكود الخاص بالحدث Click لل button1 ...
c#:
كود :
[COLOR=#0000BB]SqlConnection cn [/color][color=#007700]= new [/color][color=#0000BB]SqlConnection[/color][color=#007700](@[/color][color=#DD0000]"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\Documents\mydatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"[/color][COLOR=#007700]);
[/COLOR][color=#0000BB]string mycmd [/color][color=#007700]= [/color][color=#DD0000]"select FirstName,Age from mytable"[/color][COLOR=#007700];
[/COLOR][color=#0000BB]SqlCommand mysqlcmd [/color][color=#007700]= new [/color][color=#0000BB]SqlCommand[/color][color=#007700]([/color][color=#0000BB]mycmd[/color][color=#007700], [/color][color=#0000BB]cn[/color][COLOR=#007700]);
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Open[/color][COLOR=#007700]();
[/COLOR][color=#0000BB]SqlDataReader myreader [/color][color=#007700]= [/color][color=#0000BB]mysqlcmd[/color][color=#007700].[/color][color=#0000BB]ExecuteReader[/color][COLOR=#007700]();
while ([/COLOR][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Read[/color][COLOR=#007700]())
{
[/COLOR][color=#0000BB]listBox1[/color][color=#007700].[/color][color=#0000BB]Items[/color][color=#007700].[/color][color=#0000BB]Add[/color][color=#007700]([/color][color=#DD0000]"firstname: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700][[/color][color=#DD0000]"FirstName"[/color][color=#007700]].[/color][color=#0000BB]ToString[/color][color=#007700]() + [/color][color=#DD0000]" Age: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700][[/color][color=#DD0000]"Age"[/color][color=#007700]].[/color][color=#0000BB]ToString[/color][COLOR=#007700]());
}
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]();
[/COLOR][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]();
[/COLOR]
vb.net :
كود :
[color=#0000BB]Dim cn [/color][color=#007700]As New [/color][COLOR=#0000BB]SqlConnection
cn[/COLOR][color=#007700].[/color][color=#0000BB]ConnectionString [/color][color=#007700]= [/color][COLOR=#DD0000]"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\Documents\mydatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
[/COLOR][color=#0000BB]Dim mycmd [/color][color=#007700]As [/color][color=#0000BB]String [/color][color=#007700]= [/color][COLOR=#DD0000]"select FirstName,Age from mytable"
[/COLOR][color=#0000BB]Dim cmd [/color][color=#007700]As [/color][color=#0000BB]SqlCommand [/color][color=#007700]= New [/color][color=#0000BB]SqlCommand[/color][color=#007700]([/color][color=#0000BB]mycmd[/color][color=#007700], [/color][color=#0000BB]cn[/color][COLOR=#007700])
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Open[/color][COLOR=#007700]()
[/COLOR][color=#0000BB]Dim myreader [/color][color=#007700]As [/color][color=#0000BB]SqlDataReader [/color][color=#007700]= [/color][color=#0000BB]cmd[/color][color=#007700].[/color][COLOR=#0000BB]ExecuteReader
[/COLOR][color=#007700]While [/color][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Read[/color][COLOR=#007700]()
[/COLOR][color=#0000BB]ListBox1[/color][color=#007700].[/color][color=#0000BB]Items[/color][color=#007700].[/color][color=#0000BB]Add[/color][color=#007700]([/color][color=#DD0000]"firstname: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700]([/color][color=#DD0000]"FirstName"[/color][color=#007700]) + [/color][color=#DD0000]" Age: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700]([/color][color=#DD0000]"Age"[/color][color=#007700]).[/color][color=#0000BB]ToString[/color][COLOR=#007700])
[/COLOR][color=#0000BB]End [/color][COLOR=#007700]While
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]()
[/COLOR][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]()
[/COLOR]
شرح الكود السابق...
أولا:
vb.net:
كود :
[COLOR=#0000BB]Dim cn [/color][color=#007700]As New [/color][COLOR=#0000BB]SqlConnection
cn[/COLOR][color=#007700].[/color][color=#0000BB]ConnectionString [/color][color=#007700]= [/color][COLOR=#DD0000]"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\Documents\mydatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
[/COLOR]
c#:
كود :
[COLOR=#0000BB]SqlConnection cn [/color][color=#007700]= new [/color][color=#0000BB]SqlConnection[/color][color=#007700](@[/color][color=#DD0000]"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\TD\Documents\mydatabase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"[/color][COLOR=#007700]);
[/COLOR]
هنا قمنا بتعريف الإتصال الخاص بقاعدة البيانات mydatabase ...
vb.net :
كود :
[COLOR=#0000BB]Dim mycmd [/color][color=#007700]As [/color][color=#0000BB]String [/color][color=#007700]= [/color][COLOR=#DD0000]"select FirstName,Age from mytable"
[/COLOR]
c# :
كود :
[COLOR=#0000BB]string mycmd [/color][color=#007700]= [/color][color=#DD0000]"select FirstName,Age from mytable"[/color][COLOR=#007700];
[/COLOR]
هنا قمنا بتعريف متغير من نوع String يحوي على نص جملة الإستعلام...
vb.net :
كود :
[COLOR=#0000BB]Dim cmd [/color][color=#007700]As [/color][color=#0000BB]SqlCommand [/color][color=#007700]= New [/color][color=#0000BB]SqlCommand[/color][color=#007700]([/color][color=#0000BB]mycmd[/color][color=#007700], [/color][color=#0000BB]cn[/color][COLOR=#007700])
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Open[/color][COLOR=#007700]()
[/COLOR]
c# :
كود :
[COLOR=#0000BB]SqlCommand mysqlcmd [/color][color=#007700]= new [/color][color=#0000BB]SqlCommand[/color][color=#007700]([/color][color=#0000BB]mycmd[/color][color=#007700], [/color][color=#0000BB]cn[/color][COLOR=#007700]);
[/COLOR][color=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Open[/color][COLOR=#007700]();
[/COLOR]
هنا قمنا بتعريف ال Command الذي سوف نرسله لقاعدة البيانات وفتح الإتصال...
vb.net :
كود :
Dim myreader [/COLOR][color=#007700]As [/color][color=#0000BB]SqlDataReader [/color][color=#007700]= [/color][color=#0000BB]cmd[/color][color=#007700].[/color][COLOR=#0000BB]ExecuteReader
c# :
كود :
[color=#0000BB]SqlDataReader myreader [/color][color=#007700]= [/color][color=#0000BB]mysqlcmd[/color][color=#007700].[/color][color=#0000BB]ExecuteReader[/color][COLOR=#007700]();
[/COLOR]
الان قمنا بتعريف قارئ للبيانات علما أن أنواع القوارئ هي...
ExecuteReader: في حال كان الناتج عدد كبير من البيانات...
ExecuteNonQuery: في حال لا يوجد أي قيمة مرجعة مثل عمل update أو delete ...
ExecuteScalar : في حال كان لا يوجد إلا قيمة مرجعة واحدة مثل الإسم الأول مثلا...
ExecuteXmlReader : لأخذ الناتج على شكل XML ...
الكود التالي...
vb.net:
كود :
[color=#007700]While [/color][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Read[/color][COLOR=#007700]()
[/COLOR][color=#0000BB]ListBox1[/color][color=#007700].[/color][color=#0000BB]Items[/color][color=#007700].[/color][color=#0000BB]Add[/color][color=#007700]([/color][color=#DD0000]"firstname: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700]([/color][color=#DD0000]"FirstName"[/color][color=#007700]) + [/color][color=#DD0000]" Age: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700]([/color][color=#DD0000]"Age"[/color][color=#007700]).[/color][color=#0000BB]ToString[/color][COLOR=#007700])
[/COLOR][color=#0000BB]End [/color][COLOR=#007700]While
[/COLOR]
c# :
كود :
[color=#007700]while ([/color][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Read[/color][COLOR=#007700]())
{
[/COLOR][color=#0000BB]listBox1[/color][color=#007700].[/color][color=#0000BB]Items[/color][color=#007700].[/color][color=#0000BB]Add[/color][color=#007700]([/color][color=#DD0000]"firstname: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700][[/color][color=#DD0000]"FirstName"[/color][color=#007700]].[/color][color=#0000BB]ToString[/color][color=#007700]() + [/color][color=#DD0000]" Age: " [/color][color=#007700]+ [/color][color=#0000BB]myreader[/color][color=#007700][[/color][color=#DD0000]"Age"[/color][color=#007700]].[/color][color=#0000BB]ToString[/color][COLOR=#007700]());
}
[/COLOR]
قراءة البيانات الناتجة كما في الشكل السابق...
vb.net :
كود :
[COLOR=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]()
[/COLOR][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]()
[/COLOR]
c# :
كود :
[COLOR=#0000BB]cn[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]();
[/COLOR][color=#0000BB]myreader[/color][color=#007700].[/color][color=#0000BB]Close[/color][COLOR=#007700]();
[/COLOR]
إغلاق كل شيئ تم إستخدامه وهو الإتصال والقارئ...
الان نكون قد بدأنا بأساسيات ربط قواعد البيانات...
إلى اللقاء في الدرس القادم إن شاء الله...