C#调用SQL Server分页存储过程
以SQL Server2012提供的offset ..rows fetch next ..rows only为例
e.g.
表名:Tab1
----------------------------------
ID Name
1 tblAttributeGroupDetail
2 tblAttributeGroup
3 tblAttribute
.......
50 tblBRItemTypeAppliesTo
51 tblBRItemProperties
52 tblBRItem
53 tblBRBusinessRule
54 Test
--创建分页存储过程 rTabByCondition
USE [ExampleDB]
GO
if OBJECT_ID('rTabByCondition','P') is not null drop procedure rTabByCondition
GO
create procedure [dbo].[rTabByCondition](
@PageCount int=1 --页数
,@PageSize int=10 --页显示记录数
,@Rowcount int=0 output --总记录数
)
as
set nocount on;
declare @Rows int;
select * from dbo.Tab1 order by ID offset (@PageCount-1)*@PageSize rows fetch next @PageSize rows only
set @Rows=@@ROWCOUNT
select @Rowcount=count(*) from dbo.Tab1;
return @Rows
go
declare @i int,@j int
exec @i=[rTabByCondition] @PageCount=6,@PageSize=10,@Rowcount=@j output
select @i as "@Rowcount",@j as "Return_Value"
go
显示结果:
--打开Visual Studio—创建项目—选择【控制台应用程序】
#region Directives
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
#endregionnamespace SQLStoredProcedure2
{class Program{static void Main(string[] args){SqlConnection thisConnection = new SqlConnection(@"Server=(Local)\SQL16;Integrated Security=True;Database=ExampleDB");thisConnection.Open();SqlCommand thisCommend = thisConnection.CreateCommand();thisCommend.CommandType = CommandType.StoredProcedure;thisCommend.CommandText = "rTabByCondition";thisCommend.Parameters.AddWithValue("@PageCount", "6");//页数thisCommend.Parameters.AddWithValue("@PageSize", "10");//页显示记录数SqlParameter paraOut = thisCommend.Parameters.Add("@Rowcount", SqlDbType.Int);//输出参数定义paraOut.Direction = ParameterDirection.Output;SqlParameter paraRet = thisCommend.Parameters.Add("return_value", SqlDbType.Int);//返回值paraRet.Direction = ParameterDirection.ReturnValue;SqlDataReader thisReader = thisCommend.ExecuteReader();while (thisReader.Read()){Console.WriteLine("ID:{0}\tName:{1}", thisReader[0], thisReader[1]);}thisReader.Close();thisConnection.Close();Console.WriteLine("Rows:{0};\tReturn_Value:{1};", paraOut.Value, paraRet.Value);Console.WriteLine("Program finished,press Enter/Return to continue:");Console.ReadLine();}}
}
显示效果:
转载于:https://www.cnblogs.com/Roy_88/p/5463032.html
C#调用SQL Server分页存储过程相关推荐
- SQL Server分页存储过程实践(图解)
下面来对SQL Server分页存储过程进行一下实做.图解成功的各个步骤. 一 找到大数据量的示例表 分页都是针对大记录数的表:反之有大记录数的表,可能就需要分页.例如银行用户表,就会上千万.下面先做 ...
- 使用SpringBoot+MybatisPlus框架的后端项目调用SQL Server的存储过程时报错
在使用SpringBoot+MybatisPlus框架的后端项目调用SQL Server的存储过程时报错: Mapper层xml中的代码为: 在命令行调用存储过程时,可以顺利执行,但是在mapper中 ...
- Java调用SQL Server的存储过程详解
本文较长,包含了如下几部分 使用不带参数的存储过程 使用带有输入参数的存储过程 使用带有输出参数的存储过程 使用带有返回状态的存储过程 使用带有更新计数的存储过程 1使用不带参数的存储过程 使用 JD ...
- java调用数据库存储过程_Java调用SQL Server的存储过程详解
1使用不带参数的存储过程 1 {call procedure-name} 作为实例,在 SQL Server 2005 AdventureWorks 示例数据库中创建以下存储过程: CREATE PR ...
- [转]Sql Server 分页存储过程
本文转自: 版权声明:作者:jiankunking 出处:http://blog.csdn.net/jiankunking 本文版权归作者和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且 ...
- java调用存储过程 sql server_Java中调用SQL Server存储过程示例
Java中调用SQL Server存储过程示例2007-09-03 08:48来源:论坛整理作者:孟子E章责任编辑:方舟·yesky评论(3) 最近做了个Java的小项目(第一次写Java的项目哦), ...
- 易语言 存储过程 mysql_在易语言中调用MS SQL SERVER数据库存储过程(Transact-SQL)方法总结...
作者:liigo 日期:2010/8/25 Microsoft SQL SERVER 数据库存储过程,根据其输入输出数据,笼统的可以分为以下几种情况或其组合:无输入,有一个或多个输入参数,无输出,直接 ...
- VB实现SQL Server 2000存储过程调用
VB实现SQL Server 2000存储过程调用 幸运好时机,注册赢手机 2005 三星yepp夏季数码旅游风 [文章信息] 作者: 刘兴权 陈奇 吴兵 刘雪松 时洪飞 时间: 2005-05-19 ...
- 在sql server中建存储过程,如果需要参数是一个可变集合怎么处理?
在sql server中建存储过程,如果需要参数是一个可变集合的处理 原存储过程,@objectIds 为可变参数,比如 110,98,99 ALTER PROC [dbo].[Proc_totalS ...
最新文章
- NoSQL数据库四大分类
- AI 开发指南:机器学习产品是什么?
- 趣说游戏AI开发:曼哈顿街角的A*算法 1
- Visual Studio 2008中的jQuery Intellisense
- 图像去雾算法_Matlab:单幅图象的暗原色先验去雾改进算法,能够很好地改进天空或明亮部分色彩失真问题...
- 【荐】【转】ASP.NET ViewState详解
- 计算机的指令格式通常是由两部分组成,计算机指令由两部分组成,它们是什么...
- 海马玩模拟器——搭建React Native环境
- Panoramic Photography
- linux中expr命令
- 樱花泪计算机音乐,樱花泪(纯音乐)
- 微信公众号开发之流式数据读取
- UE4使用蓝图实现自动双开关门
- 什么蓝牙耳机的延迟最低?2022延迟最低的蓝牙耳机推荐
- Quantopian 大市值科技股市值加权回测
- nextdate函数白盒测试问题 软件测试_NextDate函数测试用例 -
- OSPF的LSA及优化
- 【吴恩达机器学习】Week4 编程作业ex3——多分类任务和神经网络
- 浮点数的表示及相关知识详解
- 计算活跃度、次留、三留、七留、次留率、三留率、七留率
热门文章
- 【Linux】一步一步学Linux——iptables-restore命令(188)
- 【Linux】一步一步学Linux——ip命令(183)
- 【Linux】一步一步学Linux——lastb命令(99)
- 【Linux】一步一步学Linux——dmesg命令(74)
- 【Linux】一步一步学Linux——grep命令(49)
- 语言的顺序表的合拼_2020语文中考专题五:语言运用和综合性学习。掌握基础题五种题型...
- C语言DCI(OCI)方式连接DM数据库
- 切换ubuntu启动方式 命令行/图形界面
- error LNK2005: _DllMain@12 already defined的解决办法
- 电路知识--认识原理图(三)