VB.NET MySQL连接(DB不是本地的)

时间:2012-07-31 21:00:37

标签: mysql database vb.net

我正在尝试通过VB.NET连接到MySQL服务器,但我的程序在con.Open()行上一直冻结。

Imports System.Data.SqlClient
Imports System.Data

....

    Dim con As New SqlConnection
    Dim cmd As New SqlCommand

    Try
        con.ConnectionString = "Server=000.000.000.000;Database=db_name;Uid=db_user;Pwd=db_pw;"
        con.Open()

        cmd.Connection = con
        cmd.CommandText = "SELECT * FROM courses"
        Dim lrd As SqlDataReader = cmd.ExecuteReader()

        While lrd.Read()
            MessageBox.Show(lrd.ToString)
        End While
    Catch ex As Exception
        MessageBox.Show("Error while connecting to SQL Server: " & ex.Message)
    Finally
        con.Close()
    End Try

连接字符串中的内容是我在这些位置中的形式,使用这些单词作为此示例的实际值占位符。除了包含实际值之外,它们完全相同。因此,如果有形式错误(即缺少撇号),请告诉我。对于Server,我应该放置服务器的IP地址还是别的什么?此外,在阅读循环中,我不确定如何显示SQL查询的所有内容。我有什么正确的吗?

1 个答案:

答案 0 :(得分:1)

您正在使用ADO.NET for SQL Server而不是您应该使用的,一个与MySQL一起使用的ADO.NET客户端,例如MySQL Connector

您需要安装this并根据MySQL Connector的工作方式将代码中的SqlClient,SqlCommand,SqlConnection更改为MySqlClient,MySqlCommand,MySqlConnection。

显示第一列值:

  While lrd.Read()
            MessageBox.Show(lrd.GetValue(0))
  End While