我正在使用vb 2010专业版,并且“已经有一个与此Connection
相关联的开放DataReader
必须首先关闭”问题已经有一个开放的DataReader与此连接相关联,必须先关闭vb 2010专业
这是我的全部源代码:
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
MysqlConn = New MySqlConnection
MysqlConn.ConnectionString = "server=localhost;userid=root;password=;database=penjara"
Dim Reader As MySqlDataReader
MysqlConn.Open()
Dim query As String
Dim spath As String
Dim count As Integer = 0
Dim mysound As Media.SoundPlayer
query = "select* from penjara.info"
Command = New MySqlCommand(query, MysqlConn)
Reader = Command.ExecuteReader
While Reader.Read
count = count + 1
query = "Select penjara.info where no =count"
Command = New MySqlCommand(query, MysqlConn)
Reader = Command.ExecuteReader
If (Reader.GetInt32("keadaan") = 1) & (Reader.GetInt32("no") = count) Then
Form2.Show()
Me.Hide()
spath = "C:\Users\User\Music\emergency003.wav"
mysound = New Media.SoundPlayer(spath)
mysound.PlayLooping()
ElseIf (Reader.GetInt32("keadaan") = 1) & (Reader.GetInt32("no") = count) Then
Form3.Show()
Me.Hide()
spath = "C:\Users\User\Music\emergency003.wav"
mysound = New Media.SoundPlayer(spath)
mysound.PlayLooping()
ElseIf (Reader.GetInt32("keadaan") = 1) & (Reader.GetInt32("no") = count) Then
Form4.Show()
Me.Hide()
spath = "C:\Users\User\Music\emergency003.wav"
mysound = New Media.SoundPlayer(spath)
mysound.PlayLooping()
ElseIf (Reader.GetInt32("keadaan") = 1) & (Reader.GetInt32("no") = count) Then
Form5.Show()
Me.Hide()
spath = "C:\Users\User\Music\emergency003.wav"
mysound = New Media.SoundPlayer(spath)
mysound.PlayLooping()
ElseIf (Reader.GetInt32("keadaan") = 1) & (Reader.GetInt32("no") = count) Then
Form5.Show()
Me.Hide()
spath = "C:\Users\User\Music\emergency003.wav"
mysound = New Media.SoundPlayer(spath)
mysound.PlayLooping()
End If
End While
End Sub
我改变了它,但问题仍然存在。我改变命令和阅读器,但仍然不工作..帮助我:( – jibal
你说你已经改变了它。你做了什么改变?我已经编辑了答案。请检查整个事情 –
我改变了命令cmd和读者到rdr。 – jibal