当前位置:Gxlcms > 数据库问题 > C# 通过DataSet 获取SQL 存储过程返回的多个结果集(tables)

C# 通过DataSet 获取SQL 存储过程返回的多个结果集(tables)

时间:2021-07-01 10:21:17 帮助过:94人阅读

EXISTS (SELECT 1 FROM SYSOBJECTS WHERE id = object_id (pr_test)) DROP PROCEDURE pr_test go CREATE PROCEDURE pr_test AS SELECT TOP 4 * FROM Customers SELECT TOP 4 * FROM Employees GO EXEC pr_test

返回两个结果集:

 

技术图片

 

 在C#代码中通过DataSet集合获取存储过程结果集:

using System;
using System.Data;
using System.Data.SqlClient;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string connStr = "Data Source=.;Initial Catalog=Northwind;User ID=sa;Password=root";
            SqlConnection conn = null;
            conn = new SqlConnection(connStr);
            conn.Open();
            string sql = "exec pr_test";
            SqlDataAdapter sda = new SqlDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            sda.Fill(ds);    
            DataTable dt_customer = ds.Tables[0];
            DataTable dt_employee = ds.Tables[1];
            Console.WriteLine(dt_customer.Rows.Count);

        }
    }
}

 查看 DataSet是包含两个Table的:

 技术图片         技术图片

 

C# 通过DataSet 获取SQL 存储过程返回的多个结果集(tables)

标签:存储   技术   创建   write   obj   ace   sys   source   EAP   

人气教程排行