2

我正在尝试通过 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 查询的所有内容。我有正确的吗?

4

1 回答 1

1

您正在为 SQL Server 使用 ADO.NET 而不是您应该使用的 ADO.NET 客户端,它可以与 MySQL 一起使用,例如MySQL 连接器

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

要显示第一列值:

  While lrd.Read()
            MessageBox.Show(lrd.GetValue(0))
  End While
于 2012-07-31T21:21:41.793 回答