C# 读取在存储过程多结果集
--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运行结果:
C# 读取在存储过程多结果集的更多相关文章
- oracle 存储过程返回结果集 (转载)
好久没上来了, 难道今天工作时间稍有空闲, 研究了一下oracle存储过程返回结果集. 配合oracle临时表, 使用存储过程来返回结果集的数据读取方式可以解决海量数据表与其他表的连接问题. 在存储过 ...
- oracle 存储过程返回结果集
好久没上来了, 难道今天工作时间稍有空闲, 研究了一下oracle存储过程返回结果集. 配合oracle临时表, 使用存储过程来返回结果集的数据读取方式可以解决海量数据表与其他表的连接问题. 在存储过 ...
- PB中用oracle的存储过程返回记录集做数据源来生成数据窗口,PB会找不到此存储过程及不能正常识别存储过程的参数问题(转)
(转)在PB中用oracle的存储过程返回记录集做数据源来生成数据窗口 首先oracle的存储过程写法与MSSQL不一样,差别比较大. 如果是返回数据集的存储过程则需要利用oracle的包来定义游标. ...
- PostgreSQL 调用存储过程返回结果集
创建返回结果集类型的存储过程: CREATE OR REPLACE FUNCTION public.f_get_member_info( id integer, productname charact ...
- oracle 存储过程 返回结果集
oracle 存储过程 返回结果集 CreationTime--2018年8月14日09点50分 Author:Marydon 1.情景展示 oracle存储过程如何返回结果集 2.解决方案 最简 ...
- SQL Server检索存储过程的结果集
目的:检索过滤执行存储过程的结果集 如下介绍两个常用的方法,但是都需要申明表结构:不知道是否有更简便的方法,如有更好的方法,请不吝赐教. 以系统存储过程sp_who2为例: 方法1:使用临时表 --1 ...
- 使用Dapper读取Oracle多个结果集
Dapper对SQL Server支持很好,但对于Oracle有些用法不一样,需要自己进行特殊处理. 1.首先要自定义一个Oracle参数类 public class OracleDynamicPar ...
- JDBC获取sql server存储过程查询结果集(没有出参)
对于一些较为复杂的统计条件查询,可以通过存储过程来实现,既可以提高效率,减少网络流量,也可以避免sql语句耦合在代码中.但是存储过程返回的结果集如何获取(类似表数据),却着实让我费劲心力. 如下: C ...
- C#中使用Oracle存储过程返回结果集
问题: 在MSSQLServer中定义的存储过程可以直接返回一个数据集,如: create procedure sp_getAllEmployees as SELECT * FROM [NORTHWN ...
随机推荐
- Apache+Mod_Python配置
我其实不是个适合做编程的人,因为喜欢折腾,不喜欢日复一日的重复同样的事情.感觉挺适合做网管(运维)的. 经常在摆弄一些小众的程序员不怎么会关心的东西,不走寻常路.有时也挺纠结的,折腾这些东西的过程中, ...
- IOS----友盟推送详解
这两天好好的研究了下推送这功能,关于它我将分成两部分来讲,一.IOS手机端,二.Servlet服务端,今天先讲下IOS端 一.感受 下面讲下我对推送这个功能在IOS下的感受,这个算是我做了服务端的功能 ...
- 使用MD5WithRSA来签名和验签(.NET)
/// <summary> /// 数字签名并返回BASE64编码的字符串 /// </summary> /// <param name="contentFor ...
- bootstrap的下拉框在firefox界面不友好的处理
http://output.jsbin.com/titaki 以上这个链接在firefix浏览器打开就会发现里面有个小容器,而且下拉按钮样式跟不友好 上谷歌查了一下 1.小容器可以利用select:p ...
- ENVI软件操作【数据显示操作——Overlay菜单操作】
一.注记层(Annotation) 注记层是ENVI的一个数据类型,它的后缀名是.ann.往往作为栅格数据层,矢量数据层.三维场景会绘图图表的附加数据叠加在上面,还可以作为镶嵌图像时候的裁剪线.注记数 ...
- C# 如何实现带消息数的App图标
上次写了一篇博文,但是每次更新图标时,桌面会闪烁(刷新),有博友说人家的图标都不会刷新,还能动画.我想了一下,如果要达到这个效果,可以用Form来实现,就是在Form中嵌入一个图片,然后用一个labe ...
- ContentTools – 所见即所得(WYSIWYG)编辑器
Content Tools是一个用于构建所见即所得编辑器(WYSIWYG)的 JavaScript 库.ContentTools 所见即所得的编辑器只需要几个简单的步骤就可以加入到任何的 HTML 页 ...
- PyCharm使用(完全图解(最新经典))
PyCharm使用 一.PyCharm设置(版本:PyCharm 2016.1.2) 1.python环境设置 1.1.pycharm新建程序自动补全编码和环境: pycharm设置在 ...
- 使用Aircrack-ng进行无线安全审计
设置监听模式 激活网卡 ifconfig wlan0 up 结束占用网络接口的进程 airmon-ng check kill 开启监听模式 airmon-ng start wlan0 查看网卡是否成功 ...
- C语言的基本输入与输出函数(全解)
C语言的基本输入与输出函数 1.1.1 格式化输入输出函数 Turbo C2.0 标准库提供了两个控制台格式化输入. 输出函数printf() 和scanf(), 这两个函数可以在标准输入输出设备上以 ...