C#連接數(shù)據(jù)庫的兩種方法
兩種C#連接數(shù)據(jù)庫方法包括用MySQL DriverCS連接MySQL數(shù)據(jù)庫和通過ODBC訪問MySQL數(shù)據(jù)庫。希望這些能對大家有所幫助。
C#連接數(shù)據(jù)庫1、用MySQL DriverCS連接MySQL數(shù)據(jù)庫
先下載和安裝MySQL DriverCS,地址:
http://sourceforge.net/projects/mysqldrivercs/
在安裝文件夾下面找到MySQLDriver.dll,然后將MySQLDriver.dll添加引用到項(xiàng)目中
注:我下載的是版本是 MySQLDriverCS-n-EasyQueryTools-4.0.1-DotNet2.0.exe
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Data.Odbc;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using MySQLDriverCS;
- namespace mysql
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- MySQLConnection conn = null;
- conn = new MySQLConnection(new MySQLConnectionString("localhost", "inv", "root", "831025").AsString);
- conn.Open();
- MySQLCommand commn = new MySQLCommand("set names gb2312", conn);
- commn.ExecuteNonQuery();
- string sql = "select * from exchange ";
- MySQLDataAdapter mda = new MySQLDataAdapter(sql, conn);
- DataSet ds = new DataSet();
- mda.Fill(ds, "table1");
- this.dataGrid1.DataSource = ds.Tables["table1"];
- conn.Close();
- }
- }
- }
C#連接數(shù)據(jù)庫2、通過ODBC訪問mysql數(shù)據(jù)庫:
參考:http://www.microsoft.com/china/community/Column/63.mspx
1. 安裝Microsoft ODBC.net:我安裝的是mysql-connector-odbc-3.51.22-win32.msi
2. 安裝MDAC 2.7或者更高版本:我安裝的是mdac_typ.exe 2.7簡體中文版
3. 安裝MySQL的ODBC驅(qū)動程序:我安裝的是 odbc_net.msi
4. 管理工具 -> 數(shù)據(jù)源ODBC –>配置DSN…
5. 解決方案管理中添加引用 Microsoft.Data.Odbc.dll(1.0.3300)
6. 代碼中增加引用 using Microsoft.Data.Odbc;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Drawing;
- using System.Linq; //vs2005好像沒有這個命名空間,在c#2008下測試自動生成的
- using System.Text;
- using System.Windows.Forms;
- using Microsoft.Data.Odbc;
- namespace mysql
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" +
- "SERVER=localhost;" +
- "DATABASE=inv;" +
- "UID=root;" +
- "PASSWORD=831025;" +
- "OPTION=3";
- OdbcConnection MyConnection = new OdbcConnection(MyConString);
- MyConnection.Open();
- Console.WriteLine(""n success, connected successfully !"n");
- string query = "insert into test values( 'hello', 'lucas', 'liu')";
- OdbcCommand cmd = new OdbcCommand(query, MyConnection);
- //處理異常:插入重復(fù)記錄有異常
- try{
- cmd.ExecuteNonQuery();
- }
- catch(Exception ex){
- Console.WriteLine("record duplicate.");
- }finally{
- cmd.Dispose();
- }
- //***********************用read方法讀數(shù)據(jù)到textbox**********************
- string tmp1 = null;
- string tmp2 = null;
- string tmp3 = null;
- query = "select * from test ";
- OdbcCommand cmd2 = new OdbcCommand(query, MyConnection);
- OdbcDataReader reader = cmd2.ExecuteReader();
- while (reader.Read())
- {
- tmp1 = reader[0].ToString();
- tmp2 = reader[1].ToString();
- tmp3 = reader[2].ToString();
- }
- this.textBox1.Text = tmp1 + " " + tmp2 + " " + tmp3;
- */
- //************************用datagridview控件顯示數(shù)據(jù)表**************************
- string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" +
- "SERVER=localhost;" +
- "DATABASE=inv;" +
- "UID=root;" +
- "PASSWORD=831025;" +
- "OPTION=3";
- OdbcConnection MyConnection = new OdbcConnection(MyConString);
- OdbcDataAdapter oda = new OdbcDataAdapter("select * from customer ", MyConnection);
- DataSet ds = new DataSet();
- oda.Fill(ds, "employee");
- this.dataGridView1.DataSource = ds.Tables["employee"];
- */
- MyConnection.Close();
- }
- }
- }
【編輯推薦】