您的位置:首页 > 数据库 > MySQL

C#连接mysql的两种方法

2012-11-19 21:14 483 查看
1、用MySQLDriverCS连接MySQL数据库

先下载和安装MySQLDriverCS,地址:
http://sourceforge.net/projects/mysqldrivercs/
在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中

注:我下载的是版本是 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();



}





}

}



2、通过ODBC访问mysql数据库:

参考: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驱动程序:我安装的是 odbc_net.msi

4. 管理工具 -> 数据源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);



//处理异常:插入重复记录有异常

try{

cmd.ExecuteNonQuery();

}

catch(Exception ex){

Console.WriteLine("record duplicate.");

}finally{

cmd.Dispose();

}



//***********************用read方法读数据到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控件显示数据表**************************

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();

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: