一. ADO.NET访问方式
程序集:Mysql.Data.dll
导入包:using MySql.Data.MySqlClient;
下载:http://dev.mysql.com/downloads/connector/net/
说明:这是MySql为 ADO.NET推出的 访问 Mysql数据库的.net组件
访问方式:ADO.NET访问方式,参考 MSDN MSDN ado.net
eg.
数据库:
代码
结果
结果:
二.ODBC的方式
程序集:安装odbc驱动后就无需添加引用了
下载:1. mysql-odbc-connector http://dev.mysql.com/downloads/connector/odbc/
2.odbc驱动程序,这个与哪个数据库无关,只要使用odbc数据源就必须使用,下载地址:MSDN
说明:通过ODBC数据源的方式访问mysql数据库,需要首先创建odbc 的dsn 。方法:点击 控制面板\所有控制面板项\管理工具 数据源(ODBC 数据源) 创建DSN
导入包:using System.Data.Odbc;
数据库:同上
代码:
结果:
三. MySqlDriverCS(用法不是很广泛)
程序集:MySQLDriver.dll
导入包:usingMySQLDriverCS
下载: sourceforge上有下载。
代码和上述写法差不多,前缀也是MySql。但是连接字符串不一样
四.等等,比如CoreLab 推出的面向.net的mysql访问组件,使用时引入CoreLab.MySql.dll
五. 总结
1.c#中访问Mysql数据库方法很多,虽然导入的dll不同,导入的包不同,但是程序中代码写法都差不多。这是.net 框架的共同性,MySql数据库换成其他的数据库,程序中访问方法也只是换下前缀。
2.比较这几种写法,ODBC安装dll,配置DSN麻烦些,但是程序迁移性要好点。换个数据库,更改DSN配置就可以。代码基本可以保持不变。
3.各种访问方法性能上的差异没有比较过,尚不清楚。
4.各种访问方法或者不同数据库的 连接字符串写法不同,算是比较大的差异。建议参看 connectionstrings
http://www.connectionstrings.com/ 各种连接字符串都有