dapatkah Anda menjelaskan mengapa saya tidak dapat menggunakan dua pembaca data dalam prosedur?
Berikut ini contoh kodenya:
Private Sub Do_Execute()
Dim conx as SqlConnection
Dim cmd1 as SqlCommand
Dim cmd2 as SqlCommand
Dim drd1 as SqlDataReader
Dim drd2 as SqlDataReader
conx = new SqlConnection("connection string")
conx.Open()
cmd1 = new SqlCommand("SELECT * FROM Category" , conx)
drd1 = cmd1.ExecuteReader()
While (drd1.Read())
{
Reading Data From drd1
}
cmd2 = new SqlCommand("SELECT * FROM Stock" , conx)
drd2 = cmd2.ExecuteReader()
While (drd2.Read())
{
Reading Data From drd2
}
End Sub
Ketika saya menjalankan program itu, ia memunculkan pesan pengecualian: " Sudah ada DataReader terbuka yang terkait dengan Perintah ini yang harus ditutup terlebih dahulu! "
Ketika saya menutup drd1 sebelum drd2 diinisialisasi. Berhasil.
Mengapa saya tidak bisa menggunakan kode seperti di atas? Tolong jelaskan padaku. Terima kasih sebelumnya!