المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : How to connect C# (C SHARP ) programs to MySQL Database with source code



slava
05-06-2010, 10:44 PM
كيفية ربط برنامج بلغة سي شارب مع قاعدة بيانات MySQLhttp://eadoking.com/pic/db-csharp/csharp-logo-by-eadoking.png



كما مر معنا مقالة سابقة عن كيفية تثبيت نظام قواعد البيانات MySQL 5.1 server (http://eadoking.com/articles/2010/04/05/install-and-configure-mysql-server-database-management-system-dbms/) وفي نهاية الدرس قمنا بانشاء قاعدة بيانات نوصفها كما يلي


الاسم لقاعدة البيانات : PEOPLE
اسم الجدول الذي سنخزن فيه البيانات : persons
اما حقول (او واصفات ) الجدول هي كما يلي .. (رقم الشخص … اسم الشخص … رقم الهاتف )
وقد اصبح لدينا القاعدة البسيطة التالية مع البيانات التي فيها حسب الصورة التالية :
http://eadoking.com/pic/mysql/select-from-people.png





والآن سوف نبدا بدرس اليوم … وهو ربط هذه القاعدة البسيطة مع برنامجنا بلغة ال # C :
1. نقوم بتشغيل ال Visual Studio : ونختار مشروع جديد .. File –> New –>Project
ونختار نوع اللغة هي Visual C# ومن ثم نختار نوع التطبيق هو Windows Form Application (او اختياري )
ومن ثم نقوم بوضع اسم المشروع مع اسم Solution وذلك حسب الصور التالية
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-new-csharp-project.png
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-csharp-windows-from-application.png








2. وهنا يكون المشروع قد تم بنجاح والان نريد اضافة مكتبة الاتصال مع قاعدة البيانات وهي MySQL.Data وذلك حسب الصورتين الآتيتين ولفعل ذلك يجب ان نختار من الزر اليميني للمشروع وتختار منه add reference
ومن ثم اختيار مكاتب ال .NET واختيار MySQL.Data
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-add-reference.png
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-reference-mysql-data.png






3. والآن نريد ان نكون برنامج بسيط للاتصال بقاعدة البيانات ونضع فيه مربعات نص ليكون البرنامج اكثر ديناميكية , والمربعات التي قمت باضافتها هي كما يلي (يمكنكم اعتماد اية طريقة )
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-design.png



المربع الاول : host وهو يحوي على عنوان السيرفر الي يحوي على نظام قواعد البيانات وفي حالتنا هذه السيرفر هو الجهاز المحلي او كما يسمى localhost او 127.0.0.1 واذا كانت على جهاز آخر نستطيع وضع عنوان الجهاز .


المربع الثاني : يحوي على اسم قاعدة البيانات التي نريد الاتصال بها وهي في مثالنا هذا people


المربع الثالث : يحوي على اسم مدير قاعدة البينات او المستخدم المسموح له بالاستعلام وهو في حالتنا كما مر في الدرس السابق اسمه root


المربع الرابع : يحوي على كلمة المرور لل root وهي password كم ادخلناها سابقا .


الآن : زر التحكم connect يحوي على كود الاتصال بقاعدة البيانات وجلب البيانات منها ووضعها في listbox .
وعند الضغط على كل عنصر في ال listbox يقوم باظهار رسالة بالعنصر الذي اخترناه (وهنا يمكننا المعالجة بالاف الطرق وكما نريد … لذلك اخترت الرسالة كمثال بسيط جدا )








الآن نتقل للمرحلة التالية وهي كود التشغيل ..



ونتبع ما يلي …



في نافذة الكود نقوم باستيراد المكتبة التالية حسب التعليمة using MySql.Data.MySqlClient



ونضع في زر الاتصال مع قاعدة البيانات الكود التالي .. والشرح موجود ضمن الكود (على شكل تعليقات )


view source (http://eadoking.com/articles/2010/04/10/how-to-connect-c-c-sharp-programs-to-mysql-database-with-source-code/#viewSource)print (http://eadoking.com/articles/2010/04/10/how-to-connect-c-c-sharp-programs-to-mysql-database-with-source-code/#printSource)? (http://eadoking.com/articles/2010/04/10/how-to-connect-c-c-sharp-programs-to-mysql-database-with-source-code/#about)
01.private void btnConnect_Click(object sender, EventArgs e)
02.{
03.// this is the connection string
04.// it would be
05.// "SERVER=server_name;DATABASE=db_name;UID=db_root;PASSWORD=root_pass;"
06.string MyConString = "SERVER=" +
07.txtServer.Text + ";" +
08."DATABASE=" + txtDBName.Text +";" +
09."UID=" + txtUser.Text +";" +
10."PASSWORD="+txtPass.Text +";";
11.// create a connection to the database
12.MySqlConnection connection = new MySqlConnection(MyConString);
13.// create command object to use it to use the queries
14.MySqlCommand command = connection.CreateCommand();
15.
16.// reader to read data returned from database
17.MySqlDataReader Reader;
18.
19.//db statement (query )
20.command.CommandText = "select * from persons";
21.
22.//open the connection with db
23.connection.Open();
24.
25.// execute the quey the return the result to Reader <IMG class=wp-smiley title="icon smile How to connect C# (C SHARP ) programs to MySQL Database with source code كيفية ربط برنامج بلغة سي شارب مع قاعدة بيانات MySQL Eadoking" alt=:) src="http://eadoking.com/wp-includes/images/smilies/icon_smile.gif (http://eadoking.com/wp-includes/images/smilies/icon_smile.gif)">
26.Reader = command.ExecuteReader();
27.
28.// if there is no data the reader will be NULL
29.// else will put like pointer on the first row and each
30.// loop move to the next row
31.
32.while (Reader.Read())
33.{
34.// string to get the data in row
35.string thisrow = "";
36.//this loop work on columns
37.// in our example we have id,name,phone
38.for (int i = 0; i < Reader.FieldCount; i++)
39.thisrow += Reader.GetValue(i).ToString() + ",";
40.
41.// we add the data in single row to listbox
42.listBox1.Items.Add(thisrow);
43.}
44.
45.//after we finish we should clode the DB Connection
46.connection.Close();
47.}






والآن يكون الكود الاساسي قد تم بنجاح والان تنفيذ البرنامج سوف يظهر النتائج التالية على الى نفس قاعدة البيانات كما في الصورة التالية :
http://eadoking.com/pic/db-csharp/connect-csharp-with-mysql-db-results.png





والآن تم بحمد الله انتهاء الشرح .. لاي استفسار او طلب او شيء غير مفهوم الرجاء وضع السؤال او الاستفسار فورا