vb.netのテキストボックスにCOUNT(*)クエリから取得した値を表示しようとしていますが、取得した値を表示する代わりに、実際のクエリmysqlクエリから取得した値をVB.netのテキストボックスに表示する
ここImports MySql.Data.MySqlClient
Public Class Statistics
Dim conn As MySqlConnection
Dim command As MySqlCommand
Dim query As String
Dim dadapter As New MySqlDataAdapter
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
conn = New MySqlConnection
conn.ConnectionString =
"server=localhost;userid=root;database=librarydatabase"
Dim reader As MySqlDataReader
Try
conn.Open()
query = "SELECT COUNT(*) FROM login where users='" & Username.Text & "'"
command = New MySqlCommand(query, conn)
reader = command.ExecuteReader
dadapter.SelectCommand = command
If reader.HasRows Then
reader.Read()
takenout.Text = (query)
End If
conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
Finally
conn.Dispose()
End Try
End Sub
は私のプログラムのスクリーンショットです:
私はそれがtakenoutでtakenout.Text =(クエリ)を置き換えるために変更するコードを修正しようとしています。テキスト=(reader.read())とreader.readを())上記とdadapter.SelectCommand =コマンドここ
が変更されたコードで削除:
Imports MySql.Data.MySqlClient
Public Class Statistics
Dim conn As MySqlConnection
Dim command As MySqlCommand
Dim query As String
Dim dadapter As New MySqlDataAdapter
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
conn = New MySqlConnection
conn.ConnectionString =
"server=localhost;userid=root;database=librarydatabase"
Dim reader As MySqlDataReader
Try
conn.Open()
query = "SELECT COUNT(*) FROM login where users='" & Username.Text & "'"
command = New MySqlCommand(query, conn)
reader = command.ExecuteReader
If reader.HasRows() Then
takenout.Text = (reader.Read())
End If
conn.Close()
Catch ex As MySqlException
MessageBox.Show(ex.Message)
Finally
conn.Dispose()
End Try
End Sub
このコードでは問題は解決しませんが、ユーザー名テキストボックスの内容にかかわらず、ボタンを押すとテキストボックスにtrueが表示されます。
よりもむしろ盲目的にランダムコードをしようと、あなたはどのように[DbDataReaderの](https://msdn.microsoft.com/en-us/library/system.data.common見にMSDNで10分を費やす必要があります。 dbdatareader(v = vs.110).aspx)が動作します。行を 'read()'したら、データを取得する必要があります。しかし、1行しか返せない 'Count()'クエリの場合、読者は必要ありません。 'command.ExecuteScalar()'は値を返します – Plutonix