سلام دوستان فکر می کنم اولین کسی باشم که تو سایت های فارسی زبان این اموزش رو گذاشتم یعنی من خودم هیچ چیزی پیدا نکردم ! حالا بگذریم مهم نیست، برویم به سراغ ایجاد آن برای اینکه بتوانیم با دیتابیس mysql ارتباط برقرار بکنیم (به آن وصل شویم ) نیاز داریم تا از یکی از کتاب خانه ای سی شارپ را به پروژه خود اضافه کنیم برای این کار دو روش وجود دارد.
اگر visual studio شما ۲۰۱۰ به بالا است می توانید از روش اول استفاده کنید در غیر اینصورت باید به صورت دستی یک dll را import کنید.
روش اول
در قسمت سمت راست بر روی solution explorer کلیک راست کرده سپس از توی لیست باز شده گزینه manage Nuget packegs… را کلیک کرده در اینجا یک صفحه برای شما باز می شود سپس در قسمت جستجو این کلمات (mysql.data) رو تایپ کرده و صبر کنید جستجو به پایان برسد پس از آن اولین چیزی را که پیدا کرد نصب کنید (کافی است روی دکمه install کلیک کنید ) کمی صبر کنید تا dll های مورد نیاز به صورت اتوماتیک دانلود شوند.
روش دوم
دی ال ال مربوط به mysql connector رو دانلود و از طریق ادد رفرنس اضافه کنیم.
برای استفاده از این کتاب خانه در قسمت using (بخشی که کتاب خانه ها رو اضافه می کنیم ) کد زیر را قرار دهید.
using MySql.Data;
using MySql.Data.MySqlClient;
گر بخواهید در سیستم خود به دیتابیس mysql وصل شوید ( یعنی با برنامه هایی مانند wamp , xampp و… دیتابیس را به صورت داخلی (local) ایجاد کرده باشید) نیاز دارید از خط زیر برای اتصال به آن دیتابیس استفاده کنید.
string connectionString = "Server=localhost;Database=نام دیتابیس;Username=نام کاربری;Password=پسورد دیتابیس;";
اما اگر می خواهید به یک دیتابیس بروی یک سرور وصل شوید خط زیر را جایگزین بالایی کنید.
string connectionString= "Server=ایپی وب سرور یا ایپی سایت ;Port=3306;Database=نام دیتابیس;User=نام کاربری;Password=پسورد";


دقت کنید در بالا پورت را نباید تغییر دهید این port برای اتصال به دیتابیس لازم است و نکته: ممکن است این پورت توسط شخصی که هاست را از آن تهیه کرده اید بسته شده باشد علت بسته بودن آن هم داشتن باگ exploit است.برای باز کردن این پورت کافی است در خواست کنید تا پورت را برایتان بازکنند.
حال زمان بررسی برقراری ارتباط با mysql است. برای این کار از کد زیر استفاده می کنیم.

string connetionString = null;
MySqlConnection cnn;
cnn = new MySqlConnection(connectionString);
try
{
cnn.Open();
MessageBox.Show("Connected! ");
cnn.Close();
}
catch (MySqlException ex)
{
MessageBox.Show(ex.Number.ToString());
}




در صورتی که برقرای ارتباط به درستی انجام شود پیغام Connected به کابر نمایش می دهد در غیر اینصورت خطاهای احتمالی زیر برای شما نمایش داده می شود ما به برخی از این خطا ها رسیدیگی می کنیم
اگر پیام نمایش داده شده برابر با کد ۰ بود یعنی نمی تواند به سرور متصل شود و اگر کد برابر با ۱۰۴۵ بود یعنی نام کاربری یا پسورد دیتابیس را اشتباه وارد کرده اید و اگر برابر با ۱۰۴۲ بود امکان برقراری ارتباط با ادرس ip که شما داده اید وجود ندارد ( به شکل معنی ساده نمی تواند نام host یا ایپی را resolve کند).
در آینده نزدیک (پست بعدی نحوه ( DML (Insert, Update, Select, Delete ) را خواهم گفت.
به درود