[英]SqlDataReader read whole query
I have a SQL script with a loop. 我有一个带循环的SQL脚本。 In each iteration I change the where clause. 在每次迭代中,我都会更改where子句。 So I get several selects displayed. 所以我得到几个选择显示。 But my .net program reads only the first select. 但是我的.net程序只读取第一个选择。 The SQL script works in ssms. SQL脚本在ssms中工作。
This is my SQL script 这是我的SQL脚本
while (@aktuellParam <= @countParam)
Begin
SELECT name1,
name2
FROM dbo.tableName
WHERE name like @var
SET @aktuellParam = aktuellParam+1
END
This is my vb.net code 这是我的vb.net代码
Using reader As SqlClient.SqlDataReader = _server.ConnectionContext.ExecuteReader(script)
Dim lfdnr As Integer = 1
Do While reader.Read()
spaltenListe.Add(New ISpalten With
{
.Name1= reader.GetString(reader.GetOrdinal("name1")),
.Name2= reader.GetString(reader.GetOrdinal("name2"))
})
lfdnr = lfdnr + 1
Loop
reader.Close()
End Using
That's because subsequent selects are actually in a different result set. 那是因为随后的选择实际上处于不同的结果集中。 Your reader needs to do a .NextResult after each read. 您的阅读器在每次阅读后都需要执行.NextResult。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.