Я новичок в кодировании.Кажется, я не могу дать результат в этом.Я создаю систему RFID-карт.
Когда я коснусь карты (с информацией в базе данных), данные будут сохранены (появится PictureBox1).Но когда я попробовал другую карту, которой еще нет в базе данных, код не соответствует синтаксису Else, или я должен сказать, что PictureBox2 не показывает, но Picturebox1 появляется.Что может быть другим способом для этого?Спасибо.Это код.
Private Sub txtReceived_TextChanged(sender As Object, e As EventArgs) Handles txtReceived.TextChanged
Dim mysql = "SELECT Schedule FROM tbl_patroninfo WHERE Schedule = @Sched"
Dim myDate As Date = lbl_Date.Text
myDate = Date.Today
con = connectDB()
con.Open()
mycommand = New MySqlCommand(mysql, con)
Dim dr As MySqlDataReader = mycommand.ExecuteReader
Dim SelectCommand As New MySqlClient.MySqlCommand("Select Fullname From tbl_patroninfo where PatronRFID = @PID", con)
SelectCommand.Parameters.Add("@PID", MySqlDbType.VarChar).Value = txtReceived.Text
Dim SelectCommand2 As New MySqlClient.MySqlCommand("select Department from tbl_patroninfo where PatronRFID = @PID", con)
SelectCommand2.Parameters.Add("@PID", MySqlDbType.VarChar).Value = txtReceived.Text
If dr.Read = False Then
con.Close()
con.Open()
lbl_Full.Text = CStr(SelectCommand.ExecuteScalar())
lbl_Department.Text = CStr(SelectCommand2.ExecuteScalar())
mycommand = New MySqlCommand("update tbl_patroninfo set Schedule = @Sched WHERE PatronRFID = @PID", con)
mycommand.Parameters.Add("@Sched", MySqlDbType.Date).Value = myDate
mycommand.Parameters.Add("@PID", MySqlDbType.VarChar).Value = txtReceived.Text
mycommand.ExecuteNonQuery()
PictureBox1.Visible = True
con.Close()
Else
con.Close()
con.Open()
PictureBox2.Visible = True
lbl_Full.Text = "RECORD NOT FOUND!"
con.Close()
End If
End Sub