




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C# 连接MYSQL数据库的方法及示例连接MYSQL数据库的方法及示例 方法一:using MySql.Data using MySql.Data.MySqlClient; 其他操作跟SQL是差不多,无非就是前缀变成MySql了. 补充: 下面是连接字符串,供参考. MySqlConnection con = new MySql.Data.MySqlClient.MySqlConnection("Database='testdb'Data Source='localhost'User Id='db'Password='apple
2、'charset='utf8'"); con.Open(); MySqlCommand cmd = new MySqlCommand(); cmd.Connection = con; 使用MYSQL推出的MySQL Connector/Net is an ADO.NET driver for MySQL 该组件为MYSQL为ADO.NET访问MYSQL数据库设计的.NET访问组件。 安装完成该组件后,引用命名空间MySql.Data.MySqlClient; 使用命令行编译时:csc /r:MySql.Data.dll test.cs 方法二: 通过ODBC访
3、问MYSQL数据库 访问前要先下载两个组件:和MYSQL的ODBC驱动(MySQL Connector/ODBC (MyODBC) driver)目前为3.51版 安装完成后,即可通过ODBC访问MYSQL数据库 方法三: 使用CoreLab推出的MYSQL访问组件,面向.NET 安装完成后,引用命名空间:CoreLab.MySql; 使用命令编译时:csc /r:CoreLab.MySql.dll test.cs 以下为访问MYSQL数据库实例 编译指令:csc /r:CoreLab.MySql.dll /r:MySql.Data.dll test.cs using System; usin
4、g System.Net; using System.Text; using CoreLab.MySql; using System.Data.Odbc; using MySql.Data.MySqlClient; class ConnectMySql public void Connect_CoreLab() string constr = "User Id=root;Host=localhost;Database=qing;password=qing" MySqlConnection mycn = new MySqlConnection(constr); mycn.Op
5、en(); MySqlCommand mycm = new MySqlCommand("select * from shop",mycn); MySqlDataReader msdr = mycm.ExecuteReader(); while(msdr.Read() if (msdr.HasRows) Console.WriteLine(msdr.GetString(0); msdr.Close(); mycn.Close(); public void Connect_Odbc() /string MyConString ="DSN=MySQL;UID=root;
6、PWD=qing" string MyConString = "DRIVER=MySQL ODBC 3.51 Driver;" + "SERVER=localhost;" + "DATABASE=test;" + "UID=root;" + "PASSWORD=qing;" + "OPTION=3" OdbcConnection MyConn = new OdbcConnection(MyConString); MyConn.Open(); OdbcCommand
7、mycm = new OdbcCommand("select * from hello",MyConn); OdbcDataReader msdr = mycm.ExecuteReader(); while(msdr.Read() if (msdr.HasRows) Console.WriteLine(msdr.GetString(0); msdr.Close(); MyConn.Close(); public void Connect_Net() string myConnectionString = "Database=test;Data Source=loc
8、alhost;User Id=root;Password=qing" MySqlConnection mycn = new MySqlConnection(myConnectionString); mycn.Open(); MySqlCommand mycm = new MySqlCommand("select * from hello",mycn); MySqlDataReader msdr = mycm.ExecuteReader(); while(msdr.Read() if (msdr.HasRows) Console.WriteLine(msdr.Get
9、String(0); msdr.Close(); mycn.Close(); public static void Main() ConnectMySql ms = new ConnectMySql(); ms.Connect_CoreLab(); ms.Connect_Odbc(); Connect_Net(); 1、用MySQLDriverCS连接MySQL数据库先下载和安装MySQLDriverCS,地址:在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中注:我下载的是版本是 MySQLDriverCS-n-EasyQueryTool
10、s-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 F
11、orm1() 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 MySQLComm
12、and("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(
13、); 2、通过ODBC访问mysql数据库: 参考: 1. 安装Microsoft ODBC.net:我安装的是mysql-connector-odbc-3.51.22-win32.msi2. 安装MDAC 2.7或者更高版本:我安装的是mdac_typ.exe 2.7简体中文版3. 安装MySQL的ODBC驱动程序:我安装的是 odbc_net.msi4. 管理工具 -> 数据源ODBC >配置DSN5. 解决方案管理中添加引用 Microsoft.Data.Odbc.dll(1.0.3300)6. 代码中增加引用 using Microsoft.Data.Odbc; using
14、 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()
15、; 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 OdbcConnec
16、tion(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); /处理异
17、常:插入重复记录有异常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, MyConne
18、ction); OdbcDataReader reader = cmd2.ExecuteReader(); while (reader.Read() tmp1 = reader0.ToString(); tmp2 = reader1.ToString(); tmp3 = reader2.ToString(); this.textBox1.Text = tmp1 + " " + tmp2 + " " + tmp3; */ /*用datagridview控件显示数据表*string MyConString = "DRIVER=MySQL ODBC
19、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 ", My
20、Connection);DataSet ds = new DataSet(); oda.Fill(ds, "employee"); this.dataGridView1.DataSource = ds.Tables"employee"*/ MyConnection.Close(); 文章出处:1、用MySQLDriverCS连接MySQL数据库先下载和安装MySQLDriverCS,地址:在安装文件夹下面找到MySQLDriver.dll,然后将MySQLDriver.dll添加引用到项目中注:我下载的是版本是 MySQLDriverCS-n-EasyQ
21、ueryTools-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
22、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 M
23、ySQLCommand("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" con
24、n.Close(); 2、通过ODBC访问mysql数据库: 参考: 1. 安装Microsoft ODBC.net:我安装的是mysql-connector-odbc-3.51.22-win32.msi2. 安装MDAC 2.7或者更高版本:我安装的是mdac_typ.exe 2.7简体中文版3. 安装MySQL的ODBC驱动程序:我安装的是 odbc_net.msi4. 管理工具 -> 数据源ODBC >配置DSN5. 解决方案管理中添加引用 Microsoft.Data.Odbc.dll(1.0.3300)6. 代码中增加引用 using Microsoft.Data.Odb
25、c; 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() InitializeCom
26、ponent(); 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 Od
27、bcConnection(MyConString); MyConnection.Open(); Console.WriteLine("n success, connected successfully !n"); string query = "insert into test values( ''hello'', ''lucas'', ''liu'')" OdbcCommand cmd = new OdbcCommand(query, MyConnectio
28、n); /处理异常:插入重复记录有异常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,
29、 MyConnection); OdbcDataReader reader = cmd2.ExecuteReader(); while (reader.Read() tmp1 = reader0.ToString(); tmp2 = reader1.ToString(); tmp3 = reader2.ToString(); this.textBox1.Text = tmp1 + " " + tmp2 + " " + tmp3; */ /*用datagridview控件显示数据表*string MyConString = "DRIVER=MyS
30、QL 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 &q
31、uot;, MyConnection);DataSet ds = new DataSet(); oda.Fill(ds, "employee"); this.dataGridView1.DataSource = ds.Tables"employee"*/ MyConnection.Close(); 文章出处:C#连接mysql数据库 1.连接:1.安装Microsoft ODBC.net。2.安装MySQL的ODBC驱动程序。2.解决方案管理中添加引用Microsoft.Data.Odbc.dll(1.0.3300)3.代码中增加引用usi
32、ng Microsoft.Data.Odbc;4.编写代码string MyConString = "DRIVER=MySQL ODBC 3.51 Driver;" + "SERVER=localhost;" +"DATABASE=samp_db;" +"UID=root;" +"PASSWORD=;" +"OPTION=3"/Connect to MySQL using Connector/ODBCOdbcConnection MyConnection = new Odbc
33、Connection(MyConString); MyConnection.Open();Console.WriteLine("n ! success, connected successfully !n"); MyConnection.Close();2.全部例程:/* sample : mycon.cs* purpose : Demo sample for ODBC.NET using Connector/ODBC* author : Venu, venu* (C) Copyright MySQL AB, 1995-2003*/* build command* * cs
34、c /t:exe * /out:mycon.exe mycon.cs * /r:Microsoft.Data.Odbc.dll */ using Console = System.Console;using Microsoft.Data.Odbc;namespace myodbc3class myconstatic void Main(string args)try /Connection string for Connector/ODBC 2.50/*string MyConString = "DRIVER=MySQL;" + "SERVER=localhost
35、;" +"DATABASE=test;" +"UID=venu;" +"PASSWORD=venu;" +"OPTION=3"*/Connection string for Connector/ODBC 3.51string MyConString = "DRIVER=MySQL ODBC 3.51 Driver;" + "SERVER=localhost;" +"DATABASE=test;" +"UID=venu;" +&
36、quot;PASSWORD=venu;" +"OPTION=3"/Connect to MySQL using Connector/ODBCOdbcConnection MyConnection = new OdbcConnection(MyConString); MyConnection.Open();Console.WriteLine("n ! success, connected successfully !n"); /Display connection informationConsole.WriteLine("Connec
37、tion Information:"); Console.WriteLine("tConnection String:" + MyConnection.ConnectionString); Console.WriteLine("tConnection Timeout:" + MyConnection.ConnectionTimeout); Console.WriteLine("tDatabase:" + MyConnection.Database); Console.WriteLine("tDataSource:&
38、quot; + MyConnection.DataSource);Console.WriteLine("tDriver:" + MyConnection.Driver);Console.WriteLine("tServerVersion:" + MyConnection.ServerVersion);/Create a sample tableOdbcCommand MyCommand = new OdbcCommand("DROP TABLE IF EXISTS my_odbc_net",MyConnection);MyComman
39、d.ExecuteNonQuery();MyCommand.CommandText = "CREATE TABLE my_odbc_net(id int, name varchar(20), idb bigint)"MyCommand.ExecuteNonQuery();/InsertMyCommand.CommandText = "INSERT INTO my_odbc_net VALUES(10,'venu', 300)" Console.WriteLine("INSERT, Total rows affected:&quo
40、t; + MyCommand.ExecuteNonQuery();/InsertMyCommand.CommandText = "INSERT INTO my_odbc_net VALUES(20,'mysql',400)" Console.WriteLine("INSERT, Total rows affected:" + MyCommand.ExecuteNonQuery();/InsertMyCommand.CommandText = "INSERT INTO my_odbc_net VALUES(20,'mysq
41、l',500)" Console.WriteLine("INSERT, Total rows affected:" + MyCommand.ExecuteNonQuery();/UpdateMyCommand.CommandText = "UPDATE my_odbc_net SET id=999 WHERE id=20" Console.WriteLine("Update, Total rows affected:" + MyCommand.ExecuteNonQuery();/COUNT(*) MyCommand
42、.CommandText = "SELECT COUNT(*) as TRows FROM my_odbc_net" Console.WriteLine("Total Rows:" + MyCommand.ExecuteScalar();/FetchMyCommand.CommandText = "SELECT * FROM my_odbc_net" OdbcDataReader MyDataReader;MyDataReader = MyCommand.ExecuteReader();while (MyDataReader.Read
43、()if(string.Compare(MyConnection.Driver,"myodbc3.dll") = 0) Console.WriteLine("Data:" + MyDataReader.GetInt32(0) + " " +MyDataReader.GetString(1) + " " +MyDataReader.GetInt64(2); /Supported only by Connector/ODBC 3.51else Console.WriteLine("Data:" +
44、MyDataReader.GetInt32(0) + " " +MyDataReader.GetString(1) + " " + MyDataReader.GetInt32(2); /BIGINTs not supported by Connector/ODBC/Close all resourcesMyDataReader.Close();MyConnection.Close();catch (OdbcException MyOdbcException)/Catch any ODBC exception .for (int i=0; i < M
45、yOdbcException.Errors.Count; i+)Console.Write("ERROR #" + i + "n" +"Message: " + MyOdbcException.Errorsi.Message + "n" +"Native: " + MyOdbcException.Errorsi.NativeError.ToString() + "n" +"Source: " + MyOdbcException.Errorsi.Source
46、 + "n" +"SQL: " + MyOdbcException.Errorsi.SQLState + "n");3.使用dataset填充dataGrid:OdbcConnection con = new OdbcConnection("DRIVER=MySQL ODBC 3.51 Driver;" + "SERVER=glf;" +"DATABASE=qxk_db;" +"UID=root;" +"PASSWORD=;" +&qu
47、ot;OPTION=3");da=new OdbcDataAdapter("select * from achi_eval",con);ds=new DataSet();da.Fill(ds,"customers");dtSource = ds.Tables"customers"pageSize=20;maxRec = dtSource.Rows.Count;PageCount = maxRec / pageSize;if (maxRec % pageSize) > 0) PageCount += 1;currentP
48、age = 1;recNo = 0;LoadPage();这是前一段需要用到,精选了一些资料,希望对大家有帮助.using System;using System.Configuration;using MySql.Data.MySqlClient;/ <summary>/ TestDatebase 的摘要说明/ </summary>public class TestDatebase public TestDatebase()
49、160; / / TODO: 在此处添加构造函数逻辑 / public static void Main ( String args )
50、; MySqlConnection mysql = getMySqlCon(); /查询sql String sqlSearch = "select * from student" /插入sql
51、 String sqlInsert = "insert into student values (12,'张三',25,'大专')" /修改sql String sqlUpdate = "update student set name='李
52、四' where id= 3" /删除sql String sqlDel = "delete from student where id = 12" /打印SQL语句 Cons
53、ole.WriteLine ( sqlDel ); /四种语句对象 /MySqlCommand mySqlCommand = getSqlCommand(sqlSearch, mysql); /MySqlCommand mySqlCommand = getSqlCommand(sqlInsert, mysql);
54、160; /MySqlCommand mySqlCommand = getSqlCommand(sqlUpdate, mysql); MySqlCommand mySqlCommand = getSqlCommand ( sqlDel, mysql ); mysql.Open();
55、 /getResultset(mySqlCommand); /getInsert(mySqlCommand); /getUpdate(mySqlCommand); getDel ( mySqlCommand );
56、 /记得关闭 mysql.Close(); String readLine = Console.ReadLine(); / <summary> / 建立mysql数据库链接 / &
57、lt;/summary> / <returns></returns> public static MySqlConnection getMySqlCon() String mysqlStr = "Database=test;Data Source=;User Id=root;P
58、assword=root;pooling=false;CharSet=utf8;port=3306" / String mySqlCon = ConfigurationManager.ConnectionStrings"MySqlCon".ConnectionString; MySqlConnection mysql = new MySqlConnection ( mysqlStr ); return mysql; / <summary> / 建立执行命令语句对象 / </summary>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 未来农业电商发展试题及答案
- 旅游度假区景观设计2025年旅游基础设施评估报告
- 搬运实训报告
- 工业污染源全面达标排放计划实施方案2025:环保产业技术创新动态
- 家具设计中科技艺术结合的可能性试题及答案
- 小学教师教学反思与实践评价试题及答案
- 江西中考生地试题及答案
- 聚焦2025年:机械制造企业服务化转型下的技术创新与应用
- 美术近代史试题及答案
- 新能源汽车前沿科技考察试题及答案
- 运输公司2024年防汛工作方案
- 2025年广东省深圳市南山实验教育集团中考一模英语试题(含答案)
- 公卫重精培训试题及答案
- 统编版道德与法治四年级下册第9课《生活离不开他们》精美课件
- 2025-2030中国汽车线控底盘行业市场现状分析及竞争格局与投资发展研究报告
- 中华农耕文化历史与现实知到课后答案智慧树章节测试答案2025年春中国农业大学
- 中考语文试卷名著专题汇编《骆驼祥子》看图题(含答案)(截至2024年)
- 设备采购方案投标文件(技术方案)
- 信息技术必修2信息系统与社会3.2《数据库的构建》教学设计
- 氢能源项目融资计划书
- 投标人对本项目合理化建议及改进措施
评论
0/150
提交评论