У меня есть хранимая процедура:
CREATE PROCEDURE [TestProc]
AS
BEGIN
select '1a', '1b'
select '2a', '2b', '2c'
select '3a', '3b'
END
Если я выполню следующий запрос с помощью SQL Management Studio,
exec TestProc
Я получаю 3 набора результатов:
1. | 1a | 1b |
2. | 2a | 2b | 2c |
3. | 3a | 3b |
Но когда я использую хранимую процедуру в ASP.NET (VB.NET),
Dim Connection As New SqlConnection(ConfigurationManager.ConnectionStrings("ConnToHilmarc").ToString)
Dim Command As New SqlCommand("exec TestProc @First, @Second", Connection)
Dim Reader As SqlDataReader
Command.Parameters.AddWithValue("@First", "Hello")
Command.Parameters.AddWithValue("@Second", "World")
Connection.Open()
Reader = Command.ExecuteReader
While Reader.Read
Response.Write(Reader(0) & " " & Reader(1) & "<br/>")
End While
Reader.Close()
Connection.Close()
Я получаю только первый набор результатов:
| 1a | 1b |
Как я могу получить три набора результатов, используя SqlDataReader
? Или даже три SqlDataReader
? Или можно получить несколько наборов результатов всего за один запрос в VB.NET? DataSet
мой единственный вариант? Заранее спасибо.