我是VB.net的新手,我发现将sql查询结果(字符串)传递给变量非常困难。
无论我尝试什么,我的阅读器功能似乎都没有得到任何东西。
我需要从员工表中获取员工“帐户类型”,然后在变量中定义该帐户类型。
有什么建议吗?
感谢。
答案 0 :(得分:4)
这是一个关于一起使用MySQL和VB的好教程:
您可能感兴趣的这篇文章:
Sub Main()
Dim cs As String = "Database=testdb;Data Source=localhost;" _
& "User Id=testuser;Password=test623"
Dim conn As New MySqlConnection(cs)
Try
conn.Open()
Dim stm As String = "SELECT * FROM Authors"
Dim cmd As MySqlCommand = New MySqlCommand(stm, conn)
Dim reader As MySqlDataReader = cmd.ExecuteReader()
While reader.Read()
Console.WriteLine(reader.GetInt32(0) & ": " _
& reader.GetString(1))
End While
reader.Close()
Catch ex As MySqlException
Console.WriteLine("Error: " & ex.ToString())
Finally
conn.Close()
End Try
End Sub
请注意MySqlDataReader
(reader
)对象。这使您可以获得各种类型的数据。您需要知道正在阅读的列类型,并使用适当的方法。
例如,如果你正在读一个布尔值,你会写:
reader.GetBoolean(0)
或日期时间:
reader.GetDateTime(0)
此示例使用int参数表示列号,但我发现这不如使用列名更直观。幸运的是MySqlDataReader
也支持列名:
reader.GetString("account_type")
该示例未显示将这些值读入变量,但它非常简单:
Dim accountType As String
...
accountType = reader.GetString("account_type")
(这假设您的帐户类型列是字符串。)
希望这有助于您走上正确的轨道。