当前位置:首页 > Windows程序 > 正文

C# 读取在存储过程多结果集

2021-03-23 Windows程序

--SQL Server 测试环境搭建:

Create database Test; go USE [Test] GO if OBJECT_ID(‘Tab‘,‘U‘) is not null drop table Tab go CREATE TABLE [dbo].[Tab]( [ID] [int] identity(1,1) NOT NULL, [name] [sysname] NOT NULL, ) go if OBJECT_ID(‘Tab2‘,‘U‘) is not null drop table Tab2 go CREATE TABLE [dbo].[Tab2]( [ID] [int] IDENTITY(1,1) NOT NULL, [TabID] [int] NOT NULL, [Name2] [nvarchar](50) NULL ) ON [PRIMARY] GO--创建存储过程:if OBJECT_ID(‘P3‘,‘P‘) is not null drop procedure P3 go create procedure P3 as select * from Tab; select * from Tab2;--打开Visual Studio—创建项目—选择【控制台应用程序】

#region Using Directives using System; using System.Data; using System.Data.SqlClient; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; #endregion namespace TestReadingStoreProc { class Program { static void Main(string[] args) { SqlConnection thisConnection = new SqlConnection(@"Server=(Local);Database=Test;User ID=sa;Password=1"); SqlCommand thisCommand = thisConnection.CreateCommand(); thisCommand.CommandType = CommandType.StoredProcedure; thisCommand.CommandText = "P3"; SqlDataAdapter thisAdapter = new SqlDataAdapter(thisCommand); DataSet thisDataSet = new DataSet(); thisAdapter.Fill(thisDataSet); if (thisDataSet.Tables.Count > 0) { Console.WriteLine("Table Name:{0}\nTable Rows:{1}",thisDataSet.Tables[0].TableName, thisDataSet.Tables[0].Rows.Count); Console.WriteLine("Table Name:{0}\nTable Rows:{1}", thisDataSet.Tables[1].TableName, thisDataSet.Tables[1].Rows.Count); } thisConnection.Close(); Console.ReadKey(); } } }

----按F5运行结果:

技术分享

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/65972.html