首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用OLEDB连接localhost sql数据库

问使用OLEDB连接localhost sql数据库
EN

Stack Overflow用户
提问于 2016-07-20 15:53:40
回答 2查看 1.8K关注 0票数 1

我有以下使用VB.NET连接本地主机数据库和OLEDB的代码。下面是代码:

代码语言:javascript
复制
Imports System.IO
Imports System.Data
Imports System.Data.OleDb

Module Module1
Public conn As OleDbConnection

Public Sub OpenConnection()

    conn = New OleDbConnection()

    If conn.State = ConnectionState.Closed Then

        Try
        conn.ConnectionString = "provider=MySQLProv; Data Source=mydbname; User Id=root; Password=password"

         conn.Open()

            MsgBox("Connected to DB")

Catch ex As OleDbException
                MessageBox.Show("Error Connecting to Database")
                conn.Close()
                conn.Dispose()
            End Try
        End If
    End Sub

运行时,出现错误“'MySQLProv‘提供程序未在本地计算机上注册”。就会出现。我已经安装了MySQL Connector Net 6.5.7和MySQL Connector ODBC 5.3,但Visual Studios说还没有安装。

我也尝试了不同的连接字符串,如下所示,但每个字符串都有错误:

代码语言:javascript
复制
            'conn.ConnectionString = "Driver={MySQL};SERVER=localhost;DATABASE=smsengine5;USER=root;PASSWORD=password"

            'conn.ConnectionString = "provider=MYSQLOLEDB; Driver={MySQL};SERVER=localhost;DATABASE=mydbname;USER=root;PASSWORD=password"

            'conn.ConnectionString = "provider=.NET Framework Data Provider for MySQL;*;Uid=root;Pwd=password;Database=mydbname;"

            'conn.ConnectionString = "provider=MySQLProv; Data Source=mydbname; User Id=root; Password=password"

            'conn.ConnectionString = "Driver={mysql};Server=localhost;PORT=3306;UI D=root;PWD=password;OPTION=16386"

            'conn.ConnectionString = "Provider=<<MySQLProv>>; Location=<<localhost>>; Data Source=<<mydbname>>; USER ID=<<root>>; PASSWORD=<<password>>; option=3;port=33 06;"

            'conn.ConnectionString = "Driver={MySQL ODBC 3.51 Driver};Server=localhost Database=mydbname; User=root; Password=password; Optio n=4;"

            'conn.ConnectionString = "Provider=MySQLProv.3.9;Location=<<localhost>>;Data Source=<<mydbname>>; USER ID=<<>root>>;Password=<<password>>;port=<<3306>>;"

            'conn.ConnectionString = "Provider=MySQL Provider; Data Source=localhost; User ID=root; Password=password; Initial Catalog=mydbname;"

            'conn.ConnectionString = "Server=localhost;Database=mydbname;Uid=User;Pwd=mypass; providerName=MySql.Data.MySqlClient"

            'conn.ConnectionString = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=mydbname; User=root;Password=myPassword;Option=3;"

            'conn.ConnectionString = "Provider=SQLOLEDB; Data Source=localhost; Initial Catalog=mydbname; User ID=root; Password=password;"

            'conn.ConnectionString = "Data Source=localhost:3306;Database=mydbname;User ID=root; Password=password;"

我还在我的项目中引用了Mysql.Data。

**我不想使用MySQL客户端。

请帮帮忙。谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-07-20 16:53:01

如here所述,使用OLEDB的MySQL有三个连接字符串

标准

代码语言:javascript
复制
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
MySQL

指定TCP端口的

代码语言:javascript
复制
Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;
Pwd=myPassword;

端口3306是默认的MySql port.The,如果使用Unix套接字,则忽略该值。

多服务器

使用此选项可以连接到复制服务器配置中的服务器,而无需考虑使用哪台服务器。

代码语言:javascript
复制
Server=serverAddress1, serverAddress2, serverAddress3;Database=myDataBase;
Uid=myUsername;Pwd=myPassword;
票数 0
EN

Stack Overflow用户

发布于 2016-07-25 09:09:26

通过使用"provider = MSDataShape“解决

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38475454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档