c#使用OLEDB连接MYSQL数据库问题

jinkaha 2013-04-17 09:43:49
本人现在需要在程序中使用OLEDB连接数据库,现已写好了连接字符串:
string oleconn = "provider=" + _provider + ";User ID=" + _userID + ";password=" + _userPass + ";Initial Catalog=" + _dbName + ";Data Source=" + _server + ";Connect Timeout=" + _timeout.ToString();
当连接SQL数据库时如下方式可以连接:
new DCS.Common.Database("odbc", "cwbase2", "lc0029999", "aaaaaa", ".", "SQLOLEDB", 3600, 512);
但是当连接MYSQL数据库时,连接不成功,其中provider字段不知道怎么写?
求解答!
...全文
611 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qldsrx 2013-04-17
  • 打赏
  • 举报
回复
请使用ADO.NET,不要用OLEDB,那个非常糟糕,已过时。 去MySql官网下载Connector/Net驱动:http://dev.mysql.com/downloads/connector/net/6.5.html 你也可以直接下载完整数据库安装包,包含这个驱动的选择。之后用法和SqlClient完全一样,包括连接字符串都是一样的写法,甚至可以直接在Visual Studio内部可视化配置,非常方便。而如果要在项目中使用,需要添加dll引用(MySql.Data.dll)
  • 打赏
  • 举报
回复
用OLEDB的时候,连接串是这样写的: "Provider=MySQL Provider; Data Source=localhost; User ID =root; Password=passwd; Initial Catalog=mydb"; 仅供参考。 目前我本机上驱动已经过期不能用了,而且以前能用的时候感觉这样连接明显比用MySqlDroverCS慢很多
  • 打赏
  • 举报
回复
这个驱动你装了后就不需要连接字符串了: MySQLConnection conn = new MySQLConnection(new MySQLConnectionString("localhost", "mydb", "root", "passwd").AsString); conn.Open(); DataTable dt = new MySQLSelectCommand(conn, new string[] { "*" }, new string[] { "USERINFO" }, new object[,] { { "ID", ">", 0 } }, null, null ).Table; this.dataSet1.userinfo.Merge(dt);
jinkaha 2013-04-17
  • 打赏
  • 举报
回复
引用 2 楼 davinciyxw 的回复:
sourceforge下载安装MySQLDriverCShttp://sourceforge.net/projects/mysqldrivercs/files/MySQLDriverCS-n-EasyQueryTools/Release%204.0.1/
你说的这个驱动我已经装了,我现在不太明白的是连接字符串中privider应该怎么写,我这里总是报错“未在本地计算机上注册“XX”提供程序。”
  • 打赏
  • 举报
回复 1
sourceforge下载安装MySQLDriverCShttp://sourceforge.net/projects/mysqldrivercs/files/MySQLDriverCS-n-EasyQueryTools/Release%204.0.1/
  • 打赏
  • 举报
回复
记得要安装一个provider驱动的,而且后来还过期不能用了。 可以考虑使用MySQLDriverCS

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧