درس ربط vb.net مع عاقدة بيانات MySql بواسطة ADO.net.2
بسم الله الرحمن الرحيم وبه نستعين :
اولا : اقدم شكر خاص جدا جدا لأخي الكريم yaser alshikh الذي تعلمت منه الكثر الكثر ولا أخفي عليكم ان 90% من
هذا الدرس قائم علي الدروس التي قدمها في هذا المنتدى العزيز على قلبي واقول لكم بكل سراحة مازلت اتتلمذ علي يدة
واسئل الله ان تكون في ميزان اعمالة .
المرجع الاساسي لهذا الدرس : /index.php?showtopic=115282
ثانياَ : اقدم شكري الجزيل لاخي النبهاني الذي دلني على مزود الاتصال لربط بين .net و mysql .
متطلبات الدرس :
1- تنصيب قاعدة بيانات MySQL 5.2 وهي موجودة في موقع MySQL.com وهو مجانية على الرابط التالي :
بعد التنصيب قم بانشاء قاعدة البيانات الخاصة بك . ( يفترض معرفة مسبقة بقاعدة بينات MySql ) ويوجد مرجع جيد لتعلم MySql في هذا الرابط :
http://www.c4arab.com/showasection.php?lssid=98
2- تنصيب مزود الاتصال لربط بين .net و mysql وهي على الرابط التالي :
http://dev.mysql.com/downloads/connector/net/1.0.html
المقدمة :
يعتبر هذا الدرس مقدمة او مدخل لربط Mysql وال vb.net ,في الحقيقة من خلال متابعتي لمنتديات البرمجة والمواقع العربية الخاصة بالحاسب الالي
وجدت معضمها تتحدث وتشرح ربط vb.net بقاعدة بيانات Microsoft Access من خلال Ado.net
كذلك ربط vb.net بقاعدة بيانات Microsoft SQL ولم اجد موضوع يتحدث عن ربط vb.net مع عاقدة بيانات MySql
او قاعدة بيانات Oracle ولحاجتي في العمل لبرمجة mysql عكفت على البحث واثرت ان اقدم ما تعلمتة للجميع وإن شاء الله سوف ياتي من يشرح ربط Oracle
ليكتمل بذلك عقد منتدى تقنية ADO.net وتغطيتة بذلك لأهم قواعد البيانات Microsoft Access , Microsoft SQL , MySql , Oracle .
بعد تنصيب كل من MySQL 5.2 واداة الربط بتقنية ado.net ينبغي ان نتعلم ربط المشروع ب Object Mysql وهو كالتالي :
1- افتح مشروع جديد .
2-Data > add new data sours
3- ستظر لكل نافذة مصادر البيانات اختر Object كمافي الشكل التالي :
اختر Object > next
4- بعدها سوف ينقلك الى النافذة التالية :
اختر Add Referenc ستظهر لك نافذة جدادة اختر Browse وذهب الى مكان تخزين ادات الربط في القرص الصلب
C:\Program Files\MySQL\MySQL Connector Net 1.0.8\Binaries\.NET 2.0
واختر MySql.Data.dll
وضغط على زر ok .
5- بعداها سوف يظهر كائن MySqlData في القائدة قم بفتحها بالضغط على علامة + وفتح MySqlData.MySqlClient
بنفس الطريقة وختر MySqlConnection بعدها next ثم finish كما في الصورة .
الحمد الله تم بذلك اضافة كائن My Sql الى المشروع .
من المميزات التي لا حظتها في تقنية ADO.net ان معظم الكائنات والاوامر متشابه لحد كبير
فمثلا OleDb يندرج تحت مجموعة من الكائنات عن استخدام access :
OleDbCommand , OleDbConnection , OleDbDataAdapter
OleDbDataReader , OleDbParameter OleDbCommandBuilder
, OleDbTransaction. , OleDbException
كذلك عند استخدام قاعدة بيانات SQL Server تندرج تحتها نفس الكائنات ولكن باختلاف المزود :
SqlCommand , SqlConnection , SqlDataAdapter , SqlDataReader
, SqlParameter , SqlCommandBuilder , SqlTransaction.
كذلك قاعدة بينات Oracle نفس الكائنات .
من ذلك نستنتج ان الكائنات التي تندرج تحت MySql بنفس النمط :
MySqlCommand , MySqlConnection , MySqlDataAdapter , MySqlDataReader
, MySqlParameter , MySqlCommandBuilder , MySqlTransaction
============================================================
التعريفات :
عند استخدام Mysql في المشروع نقوم باستدعاء فضاء الاسماء الخاص بقواعد البيانات بكتابة الكود التالي :
Imports System.Data Imports MySql.Data.MySqlClient
بعد ذلك نقوم بتعريف الكائنات الخاصة MySql لهذا المثال في Class Form1 :
Dim myconn As MySqlConnection Dim mycom As MySqlCommand Dim myreader As MySqlDataReader
البروفيدر Provider :
البروفيدر الخاص Mysql بوضعة الطبيعي ياتي كالتالي :
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; او Data Source=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Command Logging=false;
ولضبط Provider بدقة وسرعة دون عناء ولتلافي الاخطاء انصح الجميع بهذا الموقع http://www.connectionstrings.com/default.aspx
اصبر شوي ماخلصت كلامي اختر قاعدة البيانات المطلوبة ونحن هنا راح نختار Mysql ثم اذهب الى اقصى الصفحة في الزاوية اليمنى
وضغط على Set Your custom connection strings values قم بكتابة عنوان السرفر واسم قاعدة البرايانات واسم المستخدم والباسوورد
وضغط بعدها على Save ليقوم الموقع بعد ذلك بكتابة Provider المطلوب بشكل صحيح موقع جميل ولا وش رايكم :) .
بعد ذلك نكمل الكود كما تعلمناه في OleDb و SQL Server كمال في المثال :
Imports System.Data
Imports MySql.Data.MySqlClient
Public Class Form1
Dim myconn As MySqlConnection
Dim mycom As MySqlCommand
Dim myreader As MySqlDataReader
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim mysqlstr As String
Dim mycomstr As String
mysqlstr = String.Format("server=localhost;user id=root; database=paydept_mod; pooling=false")
myconn = New MySqlConnection(mysqlstr)
mycomstr = "select emp_name,emp_cump from emp_info"
mycom = New MySqlCommand(mycomstr, myconn)
myconn.Open()
myreader = mycom.ExecuteReader()
myreader.Read()
Txt1.Text = myreader.Item("emp_name")
txt2.Text = myreader.Item("emp_cump")
myreader.Close()
MsgBox("الحمد الله الذي سخر لنا من بديع علمه صنع الاشياء ")
myconn.Close()
End Sub
End Classبهذا نكون انتهينا من إلقاء الضوء على ربط vb.net مع عاقدة بيانات MySql بواسطة ADO.net.2
واسئل الله العلي القدير ان ينفع به كل باحث عن المعرفة وان يكون بوابة للإنطلاق في برمجة MySql
تحياتي للجميع بالتوفيق ahmedd .