我想查找包含某個參考編號的每個記錄,然後將每個記錄分配給一個會話,以便它可以添加到PDF。當我運行下面的代碼時,它僅執行1個參考編號,即使可能有3個記錄需要從中獲取數據。任何想法爲什麼它不是爲每個記錄執行它? TIA對於每個語句不能正常工作
cmd = New SqlCommand
cmd.Connection = Con
cmd.CommandText = "SELECT [Physician First Name], [Physician Last Name], [Recipient Primary Business Street Address Line 1], [Recipient City], [Recipient State], [Recipient Zip Code] FROM tblData WHERE ReferenceNumber = @ReferenceNumber"
cmd.Parameters.Add(New SqlParameter("@ReferenceNumber", (ReferenceTextBox.Text)))
Dim reader As SqlDataReader = cmd.ExecuteReader()
For Each NPIlookup In reader
If (reader.Read()) Then
Session("DoctorFirstName") = reader(0)
End If
Session("PDF") &= Session("DoctorFirstName")
Next
感謝您的幫助 – user1342164
*當您通過閱讀器枚舉時,您列舉了當前記錄的字段集合,而不是所有記錄。*這是錯誤的。當您通過'SqlDataReader'(或'OracleDataReader')枚舉時,您可以枚舉所有記錄。沒有必要使用'Read()'方法。 OPs代碼的問題是在枚舉所有記錄的同時調用Read()。 – sloth
哎喲,你說得對。我被Item()弄糊塗了。我認爲這很明顯,我從來沒有以這種方式讀取數據:)。 –