簡體   English   中英

VB.NET中的WHERE語句

[英]WHERE Statement in VB.NET

對於學校作業,我需要根據其MAC地址為計算機命名。 我有一個包含兩列Mac-Adress和Computername的mySQL表。 我想通過以下代碼使用計算機的mac地址,它可以正常工作。

全球宣言

Public connStr As String =“數據庫= Mac;” &_“ Data Source = localhost;” &_“ User Id = root; Password =” Public mac_adress As String

獲取Mac地址

Public Sub MacAdres()Dim nic as NetworkInterface =否

  For Each nic In NetworkInterface.GetAllNetworkInterfaces mac_adress = nic.GetPhysicalAddress.ToString Next End Sub 

但是,當我要創建WHERE語句時,出現錯誤。 我在WHERE語句中使用以下代碼。

 Public Sub retriveData() Try Dim query As String = "SELECT * FROM 'mactable' WHERE 'Mac-adres' = '" & mac_adress & "'" Dim connection As New MySqlConnection(connStr) Dim cmd As New MySqlCommand(query, connection) connection.Open() Dim reader As MySqlDataReader reader = cmd.ExecuteReader() While reader.Read() MessageBox.Show(reader.GetString(1)) End While reader.Close() connection.Close() Catch ex As Exception Console.WriteLine(ex.Message) End Try End Sub 

我究竟做錯了什么?

> MySql.Data.dll發生類型為'MySql.Data.MySqlClient.MySqlException'的第一次機會異常

我認為您不需要表名或字段名上的引號,並且可以刪除連字符。

Dim query As String = "SELECT * FROM mactable WHERE MacAdres = '" & mac_adress & "'"

通過使用以下命令解決了此問題:“`”而不是這些'。 那是相當奇怪的,但是它解決了。

暫無
暫無

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

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