我有一個存儲過程返回多個結果集的變量數。如果沒有下一個結果集存在,DataReader.NextResult()會給出錯誤。如何查找下一個結果集是否存在。如果有更多的結果集存儲過程返回多個結果集,但結果集的數量不固定
1
A
回答
4
的NextResult()方法返回true - 製作之前檢查你的下一個閱讀
+0
在dataReader.NextResult()上,我得到錯誤'dataReader.NextResult()'拋出了一個'System.Data.SqlClient.SqlException'類型的異常bool {System.Data.SqlClient.SqlException}。只有當沒有更多結果集時纔會出現此錯誤。 – FrankSmith 2011-02-15 17:18:40
0
(我知道這是舊的文章,但希望這是有幫助的有人)
如果你需要處理未知數量的結果集,你可以這樣做以下:
// Need to wrap the while loop in a do-while loop due to the way Read() works versus NextResult().
// Read() moves to the next record, if any, starting with the first record.
// NextResult() moves to the next result set, if any, starting with the second result set (i.e., first result set is used automatically).
do
{
while (mySqlDataReader.Read())
{
// Do some processing here...for example:
var rowValues = new object[mySqlDataReader.FieldCount];
mySqlDataReader.GetValues(rowValues);
foreach (var element in rowValues)
{
myStringBuilder.Append(element).Append(" | ");
}
myStringBuilder.AppendLine();
}
}
while (mySqlDataReader.NextResult());
相關問題
- 1. 返回多個結果集的存儲過程
- 2. Oracle查詢/存儲過程返回多個結果集
- 3. 存儲過程返回多個結果集
- 4. 從多個結果集中返回單個結果集
- 5. MySQL - 存儲過程不返回結果集
- 6. 從存儲過程返回一個結果集
- 7. 存儲過程不返回結果
- 8. MS SQL存儲過程返回的結果集與ODBC
- 9. 存儲過程中的SQL結果集
- 10. 返回多個結果集的查詢
- 11. 存儲過程是否可以返回結果集?
- 12. 存儲過程結果集與返回值
- 13. Oracle存儲過程返回分頁結果集
- 14. 如何阻止從存儲過程返回結果集?
- 15. 爲什麼NHibernate需要Oracle存儲過程返回結果集?
- 16. Apache DbUtils:處理從存儲過程返回的多個結果集
- 17. mybatis是否支持返回多於1個結果集的存儲過程?
- 18. sql存儲過程清除結果集
- 19. 從存儲過程得到結果集
- 20. 從存儲過程合併結果集
- 21. 返回存儲過程的結果sql
- 22. 如何返回多個結果集?
- 23. 如何從groovy運行存儲過程,返回多個結果集
- 24. SQL Server JDBC在調用存儲過程時返回多個結果集
- 25. WCF從存儲過程返回結果
- 26. 具有多個結果集的實體框架存儲過程?
- 27. 具有多個結果集的NHibernate存儲過程
- 28. iSeries IDB2 - 在存儲過程中聲明返回結果集的變量
- 29. pymssql執行存儲過程,但不返回結果
- 30. 如何將存儲過程的多個結果存儲到數據集中?
你有什麼錯誤?文檔說,如果沒有更多的結果集,NextResult方法應該簡單地返回false。 – 2011-02-15 02:46:35