Mysql Connect/NET وكيف تستخدمها في التعامل مع قواعد البيانات Mysql من خلال Visual Studio

24-10-2013 MYSQL | Visual Studio
إعلان

الهدف من هذه المقالة أن تعرف جيدا كيف تقوم بالتعامل مع قواعد البيانات Mysql وكتابة الإستعلامات من خلال #C بإستخدام MySql Connect/NET , سأقوم بكتابة تطبيق بسيط يوضح كيفية إدراج المكتبة إلى مشروعك ومن ثم إستخدامها بشكل مباشر, قمت بكتابة هذه المقالة بعد أن تعرضت لمشكلة في تحويل قاعدة البيانات Mysql إلى قاعدة بيانات MSSQL sdf الخاصة بالهواتف "Windows Phone", قمت بتحميل العديد من البرامج وكان معظمها لا يعمل بشكل جيد, والبرامج الممتازة ذات سعر مرتفع جدا لذلك قررت كتابة تطبيق بسيط يقوم بنسخ البيانات من قاعدة إلى أخرى.

بداية قم بتحميل المكتبة MySql Connect/NET وقم بتنصيبها على حاسوبك وبعد ذلك قم بفتح Visual Studio أي كان إصداره

إختر Mysql.Data

قم بالدخول إلى خصائص Reference

أعد تعيين قيمة Copy Local إلى True

سوف نبدأ بإضافة مكتبة Mysql.Data.MysqlClient التي تحتوي على الفئات المختصة بالتعامل مع قاعدة البيانات Mysql.

//Include Mysql Library
using MySql.Data.MySqlClient;

لبناء إتصال مع قاعدة البيانات نستخدم الأسلوب الخاص بقواعد بيانات MSSQL ولكن مع إختلاف بسيط في Connection String فعناصر الإتصال بقاعدة بيانات Mysql هي كالتالي

  • Connection : وهو من نوع MysqlConnection وهو متغير يستخدم لإستقبال نص الإتصال Connection String وفتح وإغلاق الإتصال بقاعدة البيانات
  • Server : وهو السيرفر الخاص بقاعدة البيانات Mysql وعادة ما يكون localhost
  • Database : وهي قاعدة البيانات التي سنتواصل معها
  • uid : وهو إسم المستخدم الخاص بقاعدة البيانات وعادة ما يكون root
  • password : كلمة المرور الخاصة بقاعدة البيانات وفي معظم الأحيان لا يكون هناك أي كلمة مرور
  • ConnectionString : وهو نص الإتصال بقاعدة البيانات ويحتوي على القيم الخاصة بالعناصر السابق ذكرها

تجهيز نص الإتصال ConnectionString

يتم تجهيز نص الإتصال بقاعدة البيانات من خلال إنشاء متغير نصي ووضع القيم بداخله على الشكل التالي

string server = "localhost";
string database = "myDB";
string uid = "root";
string pwd = "123";
string ConnectionString = String.Format("Server={0};Database={1};" +
                          "UID={2};PASSWORD={3}", server, database, uid, pwd);

بعد ذلك ننشئ متغير الإتصال بقاعدة البيانات من نوع MysqlConnection ونقوم بتزويده بنص الإتصال

MySqlConnection cnn = new MySqlConnection(ConnectionString);

إنشاء Command للتعامل مع الجداول

بعد ذلك نقوم بإنشاء Command ليقوم بالتفاعل مع الجداول وتنفيذ الإستعلامات عليها كما في الكود التالي

MySqlCommand cmd = new MySqlCommand();
cmd.Connection = cnn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select * from db_table";

نفتح الإتصال بقاعدة البيانات ليتمكن Command من تنفيذ الإستعلامات

cnn.Open();

ثم نقوم بتنفيذ الإستعلام وحفظ النتائج في متغير من نوع SqlDataReader

MySqlDataReader rd = cmd.ExecuteReader();

وبعد ذلك نقوم بعرض البيانات

while (rd.Read())
{
       //Write Code Here
       textBox1.Text += (rd[1].ToString() + Environment.NewLine);
}

ثم نقوم بإغلاق كافة الإتصالات المفتوحة

rd.Close();
cnn.Close();

MysqlClient تشبه إلى حد كبير SqlClient والفروقات بينهما في نوع قاعدة البيانات التي يتم التعامل معها.

SqlClient هي مخصصة لقواعد البيانات MSSQL أما MysqlClient فهي لقواعد البيانات Mysql لذلك إن كنت قد تعاملت سابقا مع SqlClient فيمكنك إستخدام MysqlClient بكل سهولة, فقط قم بتعديل ConnectionString وقم بإستخدام Mysql قبل كل فئة بدل من Sql.

مثال :

MysqlConnection

بدلا من

SqlConnection

 

عن محمد جمال

مهندس حاسوب ومطور برمجيات, أعمل Freelancer في تطوير تطبيقات الويب من خلال ASP.NET منذ عام 2007 قمت بإنشاء عدة مشاريع في مجالات مختلفة (المتحكمات الدقيقة, الأنظمة المضمنة, الروبوت, برامج سطح المكتب, أنظمة قواعد البيانات) ومن هواياتي الخط العربي

subscribe

إعلان
إعلان

تنويه : الأراء في هذا الموقع شخصية ولا تبت لأحد بصلة تحت أي حال من الأحوال