【问题标题】:How to connect to MySQL database from vb.net using app.config如何使用 app.config 从 vb.net 连接到 MySQL 数据库
【发布时间】:2018-03-25 05:39:55
【问题描述】:

我需要有关如何转换当前连接并在我的 vb.net 项目中使用 app.config 迁移的帮助,因此当我传输或编辑我的数据库凭据时,我不需要为我的程序重新编译新的安装程序。提前谢谢小伙伴们!

这是我当前的连接:

(我的mdlConnection.vb里面的代码)

Module mdlConnection
    Public connString1 As String = "server=localhost;user id=root;password=;Database=sampleprog"
    Public conn As MySqlConnection = New MySqlConnection(connString1)
    Public sql As String = ""

    Public Function ExecuteQuery(ByVal query As String) As DataTable
        Dim sqlDT As New DataTable
        Try
            Dim sqlCon As New MySqlConnection(connString1)
            Dim sqlDA As New MySqlDataAdapter(query, sqlCon)
            Dim sqlCB As New MySqlCommandBuilder(sqlDA)
            sqlDA.Fill(sqlDT)
        Catch ex As Exception
        End Try
        Return sqlDT
    End Function
End Module

这是我app.config 中的配置:

【问题讨论】:

  • 您可以在项目属性的设置页面添加连接字符串。这将自动添加到配置文件中,您可以通过My.Settings 在代码中访问它。
  • @jmcilhinney 我打开了这个问题并开始输入答案,然后分心了。我现在才注意到,我已经提交了您的评论中有类似的建议。对此感到抱歉。
  • @Fabulous 先生,我只是按照您的指示编辑了我的代码,顺便说一句,我遇到了一些错误,谢谢您
  • 谢谢你@jmcilhinney先生
  • 你遇到了什么错误?

标签: mysql vb.net visual-studio-2012


【解决方案1】:

在解决方案资源管理器中双击您项目的“我的项目”条目。从打开的窗口转到设置选项卡。将类型更改为连接字符串,如下面的屏幕截图所示

或者,您可以将以下内容添加到您的 app.config 文件中 <configuration> 开始标记下方;

<configuration>
    <connectionStrings>
        <add name="<Desired name here>" connectionString="server=localhost;user id=root;password=;Database=sampleprog" />
    </connectionStrings>
    <startup>
    ...
</configuration>

然后您可以在代码中访问连接字符串,如下所示。

Dim con = My.Settings.DbConnection ' provided you named your connection string DbConnection in the first step above.

【讨论】:

    【解决方案2】:

    这是我的设置

    这是我更新的 mdlConnection

    这是我更新的 mdlConnection

    Dim con = My.Settings.DbConnection
    Public conn As MySqlConnection = New MySqlConnection(con)
    Public sql As String = ""
    
    Public Function ExecuteQuery(ByVal query As String) As DataTable
        Dim sqlDT As New DataTable
        Try
            Dim sqlCon As New MySqlConnection(con)
            Dim sqlDA As New MySqlDataAdapter(query, sqlCon)
            Dim sqlCB As New MySqlCommandBuilder(sqlDA)
            sqlDA.Fill(sqlDT)
        Catch ex As Exception
        End Try
        Return sqlDT
    End Function
    

    【讨论】:

    • 请不要使用图片。如果可能,请在答案中使用纯文本。
    • 对不起,我的错。下次我发布我的问题时我会记下谢谢!
    【解决方案3】:

    请更新您当前的 app.config 文件如下:

        <?xml version="1.0" encoding="utf-8"?>
        <configuration>
            <startup> 
                <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
            </startup>
    
            <connectionStrings>
                <add name="MySqlConnectionString" connectionString="SERVER=localhost;DATABASE=sampleprog;UID=root;PASSWORD=;" />
            </connectionStrings>
    
        </configuration>
    

    然后修改你的'mdlConnection.vb'代码如下:

        Module mdlConnection
            Public connString1 As String = ConfigurationManager.ConnectionStrings("MySqlConnectionString").ToString()
            Public conn As MySqlConnection = New MySqlConnection(connString1)
            Public sql As String = ""
    
            Public Function ExecuteQuery(ByVal query As String) As DataTable
                Dim sqlDT As New DataTable
                Try
                    Dim sqlCon As New MySqlConnection(connString1)
                    Dim sqlDA As New MySqlDataAdapter(query, sqlCon)
                    Dim sqlCB As New MySqlCommandBuilder(sqlDA)
                    sqlDA.Fill(sqlDT)
                Catch ex As Exception
                End Try
                Return sqlDT
            End Function
        End Module
    

    请不要忘记在您的“mdlConnection.vb”中添加命名空间“Imports System.Configuration”以及在您的解决方案中引用“System.Configuration”。

    【讨论】:

    • @DDD - 我的回答对你有帮助吗?
    • 是的先生,非常感谢您的回答正是我的项目所需要的。我只是在尝试加密我的数据库密码时遇到了一些困难
    • @DDD - 你可以在Encrypting and Decrypting your DB config section here找到一些有用的信息
    • 先生,我有一个后续问题。如果我将在我的局域网中使用本地服务器独立 pc 作为我的 wampserver / mysqlserver 我将使用它的 ip 192.168.1.2 我会改变什么。 @M.d Suman Kabir
    猜你喜欢
    • 1970-01-01
    • 2013-04-21
    • 2011-01-17
    • 2020-05-14
    • 2015-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多