در این پست قصد دارم که نحوه اتصال برنامه به بانک اطلاعاتی را توضیح دهم. البته فعلا توضیات خودم را روی بانک Access می دهم و بعد از این که تجربه بیشتری روی SQL Server پیدا کردم آن را هم توضیح خواهم داد.
در ابندا برای اینکه به یک بانک اطلاعاتی متصل شویم و از اطلاعاتی که در داخل آن قرار دارد استفاده کنیم، می بایست چند اصل را رعایت کنیم.
۱- در ابتدا می بایست با اضافه کردن یک namespace به برنامه، توابع مورد نیاز را جهت کامپایل به کامپایلر اعلام کنیم. یعنی برای استفاده از بانک اطلاعاتی Access از این namespace استفاده می کنیم:
using System.Data.OleDb;
2- سپس با استفاده از OleDbConnection به بانک اطلاعاتی متصل می شویم. برای این کار ابتدا یک connection string می سازیم ( تا نوع بانک اطلاعاتی را مشخص کنیم) و بعد از آن یک شئی connection می سازیم با دستور زیر
string connection_string;
connection_string=”Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Tamrine_5_Database.accdb;Persist Security Info=False”;
OleDbConnection con = new OleDbConnection(connection_string);
بانک اطلاعاتی مورد استفاده در این برنامه Access 2007 بوده است و فایل بانک هم در پوشه ای فایل اجرایی برنامه ساخته می شود قرار داده شده است. اگر بانک اطلاعاتی ما Access 2003 باشد داده ای که در connection string قرار می گیرد متفاوت خواهد بود. برای بانک اطلاعاتی Access 2003 از connection string زیر استفاده می کنیم:
string connection_string = “Provider = Microsoft.Jet.OleDB.4.0;Data Source = Tamrine_5_Database.accdb”;
(چون موتور بانک اطلاعاتی Access است نوع ارتباط هیچ تفاوتی نمی کند و تفاوت فقط در connection string خواهد بود)
۳- در این مرحله می بایست نوع اطلاعاتی را که می خواهیم مشخص کنیم و توسط OleDbDataAdapter به بانک بفرستیم. یعنی نوع اطلاعاتی را که می خواهیم به دست آوریم رابه زبان SQL می نویسیم و در یک متغیر رشته ای قرار می دهیم و این متغیر رشته ای را به همراه connection string و SQL Command به بانک اطلاعاتی پاس می دهیم.
string st_sqlcommand_1 = “Select * from table1″;
OleDbDataAdapter da = new OleDbDataAdapter(st_sqlcommand_1, con);
4- بانک اطلاعاتی پاسخ خود را توسط یک Data Table به ما برمی گرداند. برای این کار در ابتدا یک شئی Data Table می سازیم واطلاعات درون Data Table که همان پاسخ بانک اطلاعاتی به درخواست داده شده است را درون شئی Data Table ساخته شده قرار می دهیم.
DataTable dt = new DataTable(”student”);
da.Fill(dt);
5- آخرین مرحله: نمایش اطلاعات. برای این منظور از کامپوننت DataGridView استفاده می کنیم و اطلاعات داخل شئی Data Table را به آن Bind می کنیم.
dataGridView1.DataSource = dt;
6- فعلا مرحله ۶ نداریم.
* برای کسب اطلاعات بیشتر برای اتصال به انواع بانک های اطلاعاتی از سایت زیر استفاده کنید.
http://www.connectionstrings.com/
فایل تمرین
Download Link