簡體   English   中英

如何解決VB.Net應用程序連接到在線MySQL數據庫時出現的問題

[英]How to solve the Issue when VB.Net application connect to the online MySQL database

Dim conn As New MySql.Data.MySqlClient.MySqlConnection
Dim myConnectionString As String

myConnectionString = "server=xxx.yyy.zzz.aaaa:3306;" _
            & "uid=aaa;" _
            & "pwd=bbb;" _
            & "database=ccc"

Try
    conn.ConnectionString = myConnectionString
    conn.Open()

Catch ex As MySql.Data.MySqlClient.MySqlException
    MessageBox.Show(ex.Message)
End Try
conn.Close()

服務器是 Ubuntu 18.04

這是錯誤截圖。 錯誤截圖

以前有人解決過這個問題嗎? 謝謝您的支持。

我的代碼錯了。 正如 Andrew Morton 回答的那樣,應該將端口指定為單獨的參數。

這是與遠程 sql 服務器連接的新連接字符串。


myConnectionString = "server=xxx.yyy.zzz.ddd;" _
                    & "port=aaaa;" _
                    & "uid=bbbb;" _
                    & "pwd=xxxxxx;" _
                    & "database=eeeee"

我熱衷於從定義的連接參數構建連接字符串——無論是否使用專用構建器:

Dim (or Const) Server As String = "MyServer"
Dim (or Const) Port As UInteger= 3456
Dim (or Const) Database As String = "MyDatabase"
Dim (or Const) UserId As String = "MyUser"
Dim (or Const) Password As String = "MyPassword"

Dim mySql As New MySql.Data.MySqlClient.MySqlConnectionStringBuilder() With {
    .Server = Server,
    .Port = Port,
    .Database = Database,
    .UserId = UserId,
    .Password = Password
}

來自 MySQL String Builder ( mySql.ConnectionString ) 的結果:

server=MyServer;port=3456;database=MyDatabase;user id=MyUser;password=MyPassword

或者自己動手:

Dim myConn As String = $"Server={Server};Port={Port};Database={Database};Uid={UserId};Pwd={Password}"

(注意UserIdPassword的備用參數命名。)

一個有用的資源是連接字符串網站: https://connectionstrings.com

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM