什么是oledb提供程序 c#连接mysql中provider应该是什么

2024-12-19 02:15:00
推荐回答(2个)
回答1:

第一种方案DBC.NET解决方案 MyODBC Driver优点: 兼容性好, 易于使用缺点: 运行效率差, 原因是架构包含太多层架构:ODBC.NET应用程序 <->ODBC.NET Provider <-> MYSQL ODBC 启动 <-> MYSQL API<-> MYSQL 服务器安装步骤:1, 下载安装最新的.NET FRAMEWORK2,安装MYSQL 服务端3, 下载安装2.6版以上的MDAC(Microsoft Data Access Components )地址: http://www.microsoft.com/data/ 4, 下载 ODBC.NET Provider http://www.microsoft.com/downloads/...ReleaseID=35715 5, 安装MySQL ODBC Driver ---- MyODBC 3.51; http://www.mysql.com/downloads/api-myodbc-3.51.html 6, 安装一个MyODBC DSNODBC.NET安装后有如下几个操作类OdbcCommand, OdbcConnection第二种方案:使用MYSQL NATIVE .NET Providers(推荐这个, 因为安装和使用都非常方便)优点:速度快, 开发容易缺点:是非标准访问技术1,你可以参看dbProvider http://www.einfodesigns.com/products.aspx 2, 或者MySQLNet http://sourceforge.net/projects/mysqlnet/ 3,推荐这个corelab开放的一个MYSQL.NET控件 http://crlab.com/mysqlnet/ 有免费的下载有如下几个类似于SQL 操作类MySqlConnection, MySqlCommand,MySqlDataReader,MySqlDataAdapter,MySqlParameter,MySqlTransaction================================================下面贴出第二种解决方案的部分源代码, 基本和SQL COMMAND等使用没有区别string DataSource = "localhost";string Database = "GameLib";string UserID = "root";string Password = "root-2003-";string MyConString = Data Source=" + DataSource +";Database=" + Database +";User ID=" + UserID +";Password=" + Password;try{MySqlConnection mycon = new MySqlConnection(MyConString);mycon.Open();}finally{mycon.Close();}第三种方案: 使用OLEDB.NETMYSQL暂时不支持 MyOLEDB, 所以不采用OLEDB这个方案
采纳哦

回答2:

SQLOLEDB是OleDb的Sqlserver驱动程序你用Mysql,肯定不能这样写要么通过ODBC,要么这样:下载mysql的.net驱动,这个在mysql下载页面就有 http://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-5.0.8.1-noinstall.zip/from/pick#mirrors 把dll复制到项目的bin目录里(Mysql.Data.dll),在项目里引用这个 dll然后记得using MySql.Data.MySqlClient;using System.Data;String ConnString = "server=127.0.0.1;user id=root; password=haha; database=haha; pooling=false;charset=utf8";下面的,基本就是将OleDb换成MySqlMySQLConnection DBConn;DBConn = new MySQLConnection(ConnString);DBConn.Open();MySQLCommand DBComm;DBComm = new MySQLCommand("select * from 表",DBConn); MySQLDataReader DBReader = DBComm.ExecuteReaderEx();其实大多数数据库在.net下的驱动,都是实现了跟OleDb或者Sqlserver类似的名字ps,microsoft.jet.oledb.4.0;这是ADO的东东,不要带到ADO.net中来