Mysql 查询在 vb.net 上显示空结果
Mysql query showing empty result on vb.net
我有一个 vb.net 应用程序,它使用 mysql 作为数据库。
我遇到一个问题,就是查询的结果总是空的。
下面是我的代码。
Protected Sub btnCheck_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCheck.Click
Dim con As String = ConfigurationManager.ConnectionStrings("prcConnectionString").ConnectionString
Dim Sql As New MySqlConnection(con)
Dim reader2 As Object
Sql.Open()
Dim theQuery2 As String = "Select max(shipmentdate) from prc.tbsrparts t where Substring(partsn, 17, 11) =' " & tbPartSN.Text.Substring(16, 11) & "' " 'get latest shipment date from database
Dim command2 As New MySqlCommand(theQuery2, Sql)
reader2 = command2.ExecuteScalar
lbl90days.Text = reader2.ToString
End Sub
结果应显示在标签 lbl90days 中。
但我的总是空的。
谁能指导我?
提前致谢。
试试这个:
Protected Sub btnCheck_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCheck.Click
Dim con As String = ConfigurationManager.ConnectionStrings("prcConnectionString").ConnectionString
Dim Sql As New MySqlConnection(con)
Dim reader2 As Object
Sql.Open()
Dim theQuery2 As String = "Select max(shipmentdate) from prc.tbsrparts t where Substring(partsn, 16, 11) = @PartSN"
Dim command2 As New MySqlCommand(theQuery2, Sql)
command2.CommandType = CommandType.Text
command2.Parameters.AddWithValue("@PartSN", tbPartSN.Text.Substring(16, 11))
reader2 = command2.ExecuteScalar
lbl90days.Text = reader2.ToString
Sql.close()
End Sub
能够解决
Dim PartSN As String = tbPartSN.Text.Substring(16, 11)
并将Query2代码替换为
Dim theQuery2 As String = "SELECT Max(shipmentdate) FROM prc.tbsrparts t WHERE Substring(partsn, 17, 11) = '" + PartSN.ToString + "'"
我有一个 vb.net 应用程序,它使用 mysql 作为数据库。
我遇到一个问题,就是查询的结果总是空的。
下面是我的代码。
Protected Sub btnCheck_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCheck.Click
Dim con As String = ConfigurationManager.ConnectionStrings("prcConnectionString").ConnectionString
Dim Sql As New MySqlConnection(con)
Dim reader2 As Object
Sql.Open()
Dim theQuery2 As String = "Select max(shipmentdate) from prc.tbsrparts t where Substring(partsn, 17, 11) =' " & tbPartSN.Text.Substring(16, 11) & "' " 'get latest shipment date from database
Dim command2 As New MySqlCommand(theQuery2, Sql)
reader2 = command2.ExecuteScalar
lbl90days.Text = reader2.ToString
End Sub
结果应显示在标签 lbl90days 中。
但我的总是空的。
谁能指导我?
提前致谢。
试试这个:
Protected Sub btnCheck_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCheck.Click
Dim con As String = ConfigurationManager.ConnectionStrings("prcConnectionString").ConnectionString
Dim Sql As New MySqlConnection(con)
Dim reader2 As Object
Sql.Open()
Dim theQuery2 As String = "Select max(shipmentdate) from prc.tbsrparts t where Substring(partsn, 16, 11) = @PartSN"
Dim command2 As New MySqlCommand(theQuery2, Sql)
command2.CommandType = CommandType.Text
command2.Parameters.AddWithValue("@PartSN", tbPartSN.Text.Substring(16, 11))
reader2 = command2.ExecuteScalar
lbl90days.Text = reader2.ToString
Sql.close()
End Sub
能够解决
Dim PartSN As String = tbPartSN.Text.Substring(16, 11)
并将Query2代码替换为
Dim theQuery2 As String = "SELECT Max(shipmentdate) FROM prc.tbsrparts t WHERE Substring(partsn, 17, 11) = '" + PartSN.ToString + "'"