连接到MySQL会导致错误“未找到数据源名称并且未指定默认驱动程序”
我试图使用ASP.NET Web窗体应用程序连接到MySQL数据库。我正在进行测试,将数据库从MySQL数据库绑定到GridView
。连接到MySQL会导致错误“未找到数据源名称并且未指定默认驱动程序”
这里是我的代码:
Dim strMySQLConn As String = "DRIVER={MySQL ODBC 5.1 Driver};Database=database_name;Server=ip_address;UID=username;PWD=password;"
Dim MySQLConn As New OdbcConnection(strMySQLConn)
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
Dim ds As DataSet = New DataSet()
Dim cmdMySQL As New OdbcDataAdapter("SELECT * FROM categorymaster", MySQLConn)
MySQLConn.Open()
cmdMySQL.Fill(ds, "prjs")
gv.DataSource = ds.Tables("prjs").DefaultView
gv.DataBind()
MySQLConn.Close()
End If
End Sub
然而,当MySQL数据库连接时(MySQLConn.Open()
),返回以下错误:
ERROR [IM002] [微软] [ODBC驱动程序管理器]数据源名称不是 找到并且没有指定默认驱动程序
为什么是这样的,我该如何预防它发生了吗?
此外,看到此错误的可能原因是什么?如果登录凭据不正确,是否会显示此错误?
,因为我安装的MySQL 64-bit
ODBC 5.1驱动,因为我的操作系统是运行64位的问题被引起的。
因为我一直在试图解决这个问题,所以我删除了驱动程序,并安装了MySQL ODBC 5.1驱动程序32-bit
。
这已修复了错误,我现在正在建立成功的连接。
您是如何在ODBC管理器控制台中看到32位驱动程序的?我的64位驱动程序出现问题并根据您的回复,在Win 7 64位上安装了32位,但我无法在ODBC管理器中看到该驱动程序 – SSG
您可能想检查驱动程序是否已安装。 Here is a guide to getting the list
检查您是否有任何安装,并确保您的版本与连接字符串中的版本匹配。
您应该能够下载一个驱动Here
我的 “数据源名称未找到” 的解决方案(与5.2.4 ODBC驱动程序的ANSI,Win7的64位):
1)安装64位ODBC MySQL驱动程序 - 它应该是在ODBC驱动程序可见。
2)安装32位的ODBC MySQL驱动程序 - 它是在ODBC驱动程序不可见的,但创建Program Files中86“影子”的安装。
就是这样。
这对我来说是这样的,我首先安装了32位,并且它不工作(因为我知道64位-bit不起作用),但是在安装后,它解决了我的问题。 –
Curt是对的。我有这个确切的问题。由于我在工作站上安装了MySQL Workbench,因此我认为我安装了驱动程序;不。 安装驱动程序并使用正确版本调用它,并添加命令“Provider = MSDASQL;”到连接字符串,因为我在64位系统上解决了我的问题。 如果你想看到所有安装在Windows系统上的ODBC驱动程序,打开注册表编辑器:
\ HKEY_LOCAL_MACHINE \ SOFTWARE \ ODBC \ ODBCINST.INI \ ODBC驱动程序。
在那里你会发现是否安装了MySQL驱动程序,如果是的话,它的正确名称。
This Link将带你到MySQL驱动程序下载网站。
欢迎来到Stack Overflow,@Russell S This并不是真正解决OP问题的答案(原始海报)。你应该写这个评论。 –
必须有50个评论的声望。现在我是消极的。哦poo:0) –
我已经改写了答案。谢谢你的反馈。 –
我的问题是,我对我的代码
DRIVER = {MySQL的ODBC 5.3驱动程序},但是当我做仰望的ODBC槽窗户搜索引擎我发现叫ODBC数据源一个应用程序,在该应用程序的Drivers选项卡下,我发现驱动器的名称是{MySQL ODBC 5.3 ANSI Driver}。这解决了问题。
simillar问题检查了这一点我的帮助你http://*.com/questions/3294024/data-source-name-not-found-and-no-default-driver-specified – Karthik
@karthi - 我已经将我的连接字符串改为'DRIVER = {MySQL ODBC 5.1 Driver};',但是我仍然收到相同的错误 – Curt
是否安装了驱动程序?如果ODBC无法加载驱动程序,则ODBC会出现此错误。 – Romain