本篇内容介绍了“ADO.NET NextResult检索多个结果集怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
ADO.NET提供对诸如 SQL Server 和 XML 这样的数据源以及通过 OLE DB 和 ODBC 公开的数据源的一致访问。共享数据的使用方应用程序可以使用 ADO.NET 连接到这些数据源,并可以检索、处理和更新其中包含的数据。
ADO.NET通过数据处理将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索结果的 .NET Framework 数据提供程序。这些结果或者被直接处理,放在 ADO.NET DataSet 对象中以便以特别的方式向用户公开,并与来自多个源的数据组合;或者在层之间传递。DataSet 对象也可以独立于 .NET Framework 数据提供程序,用于管理应用程序本地的数据或源自 XML 的数据。ADO.NET 类位于 System.Data.dll 中,并与 System.Xml.dll 中的 XML 类集成。
ADO.NET向编写托管代码的开发人员提供类似于 ActiveX 数据对象 (ADO) 向本机组件对象模型 (COM) 开发人员提供的功能。建议您在 .NET 应用程序中使用 ADO.NET 而不使用 ADO 来访问数据。如果返回的是多个结果集,DataReader会提供NextResult方法来按顺序循环访问这些结果集。以下示例显示SqlDataReader如何使用ExecuteReader方法处理两个SELECT语句的结果。
ADO.NET NextResult检索多个结果集VisualBasic
PrivateSubRetrieveMultipleResults(ByValconnectionAsSqlConnection) Usingconnection DimcommandAsSqlCommand=NewSqlCommand(_ "SELECTCategoryID,CategoryNameFROMCategories;"&_ "SELECTEmployeeID,LastNameFROMEmployees",connection) connection.Open() DimreaderAsSqlDataReader=command.ExecuteReader() DoWhilereader.HasRows Console.WriteLine(vbTab&reader.GetName(0)_ &vbTab&reader.GetName(1)) DoWhilereader.Read() Console.WriteLine(vbTab&reader.GetInt32(0)_ &vbTab&reader.GetString(1)) Loop reader.NextResult() Loop EndUsing EndSub
ADO.NET NextResult检索多个结果集C#
staticvoidRetrieveMultipleResults(SqlConnectionconnection) { using(connection) { SqlCommandcommand=newSqlCommand( "SELECTCategoryID,CategoryNameFROMdbo.Categories;"+ "SELECTEmployeeID,LastNameFROMdbo.Employees", connection); connection.Open(); SqlDataReaderreader=command.ExecuteReader(); while(reader.HasRows) { Console.WriteLine("\t{0}\t{1}",reader.GetName(0), reader.GetName(1)); while(reader.Read()) { Console.WriteLine("\t{0}\t{1}",reader.GetInt32(0), reader.GetString(1)); } reader.NextResult(); } } }
“ADO.NET NextResult检索多个结果集怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!