検索
Transact-SQL 示例Jun 07, 2016 pm 05:45 PM
動的外部のスプライシング移行

任务需求是这样的,定义一个存储过程可以根据设定的存储过程参数去查询某个表返回可以分页的,参数的功能如下: 1.返回记录集的第n页(@pageNo) 2.每页显示n条记录(@pageSize) 3.筛选条件(@where) 4.排序规则(@orderby) 5.总记录数(@rows) Ok,在拿

任务需求是这样的,香港虚拟主机,定义一个存储过程可以根据设定的存储过程参数去查询某个表返回可以分页的,参数的功能如下:
1.返回记录集的第n页(@pageNo)
2.每页显示n条记录(@pageSize)
3.筛选条件(@where)
4.排序规则(@orderby)
5.总记录数(@rows)

Ok,在拿到需求后,香港服务器,便开始分析。。。这里需要使用到拼接sql字符串变量然后Exec @sql即可,美国空间,但是实践发现。Exec @sql并不能把总记录数传递给外部的@rows OUTPUT参数上,为此stackoverflow一番发现答案。

下面是本人目前的做法: 

--定义存储过程 -- 示例过程中使用每个数据库都会自带的系统视图sys.objects作为测试用表 CREATE PROCEDURE dbo.Demo1 @pageNo int = 1, @pageSize int = 10, @where nvarchar(1000) = N'', @orderby nvarchar(1000) = N'name asc', @rows int OUTPUT AS BEGIN DECLARE @sql nvarchar(max) SET @sql = N'SELECT @rowsInner = COUNT(1) FROM sys.objects' IF @where N'' SET @sql = @sql + N' WHERE ' + @where SET @sql = @sql + N'; SELECT * FROM ( SELECT ROW_NUMBER() OVER(ORDER BY ' + @orderby + N') RowId, object_id, name FROM sys.objects ' IF (@where N'') SET @sql = @sql + N'WHERE ' + @where SET @sql = @sql + N' ) a WHERE a.RowId between (@pageNoInner - 1) * @pageSizeInner + 1 AND @pageNoInner * @pageSizeInner' --若要调试请撤销如下代码的注释并注释处 --SET @rows = 100 --print @sql -- EXEC sp_executesql @sql, N'@pageNoInner int, @pageSizeInner int, @rowsInner int OUTPUT', @pageNoInner = @pageNo, @pageSizeInner = @pageSize, @rowsInner = @rows OUTPUT -- END

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Python函数介绍:exec函数的介绍及示例Python函数介绍:exec函数的介绍及示例Nov 03, 2023 pm 02:09 PM

Python函数介绍:exec函数的介绍及示例引言:在Python中,exec是一种内置函数,它用于执行存储在字符串或文件中的Python代码。exec函数提供了一种动态执行代码的方式,使得程序可以在运行时根据需要生成、修改和执行代码。本文将介绍exec函数的使用方法,并给出一些实际的代码示例。exec函数的使用方法:exec函数的基本语法如下所示:exec

Python函数介绍:abs函数的用法和示例Python函数介绍:abs函数的用法和示例Nov 03, 2023 pm 12:05 PM

Python函数介绍:abs函数的用法和示例一、abs函数的用法介绍在Python中,abs函数是一个内置函数,用于计算给定数值的绝对值。它可以接受一个数字参数,并返回该数字的绝对值。abs函数的基本语法如下:abs(x)其中,x是要计算绝对值的数值参数,可以是整数或浮点数。二、abs函数的示例下面我们将通过一些具体的示例来展示abs函数的用法:示例1:计算

Python函数介绍:sorted函数的功能和示例Python函数介绍:sorted函数的功能和示例Nov 03, 2023 pm 02:47 PM

Python函数介绍:sorted函数的功能和示例Python是一门非常强大的编程语言,拥有丰富的内置函数和模块。在这个系列文章中,我们将逐一介绍Python常用的函数,并提供相应的示例来帮助读者更好地理解和应用这些函数。本篇文章将详细介绍sorted函数的功能和示例。sorted函数用于对可迭代对象进行排序,并返回排序后的新列表。可以用于对数字、字

PHP中endwhile关键字的作用和示例PHP中endwhile关键字的作用和示例Jun 28, 2023 pm 08:00 PM

PHP中endwhile关键字的作用和示例在PHP中,endwhile是一种控制结构,用来实现while循环。它的作用是让程序在满足指定条件的情况下,重复执行一段代码块,直到条件不再满足。endwhile的语法形式如下:while(condition)://循环体代码endwhile;在这个语法中,condition是一个逻辑表达式,当该表达

Python函数介绍:__import__函数的用法和示例Python函数介绍:__import__函数的用法和示例Nov 03, 2023 pm 06:15 PM

Python函数介绍:__import__函数的用法和示例Python作为一门高级编程语言,其强大的函数库以及函数的使用方法也是吸引越来越多开发者以及爱好者的原因之一。在Python中,内置的__import__函数是一个非常强大但比较少用的函数,该函数用于动态导入模块。它接收静态的模块名称并返回已导入的模块对象。Syntax:import(name[,

Python函数介绍:filter函数的作用和示例Python函数介绍:filter函数的作用和示例Nov 04, 2023 am 10:13 AM

Python函数介绍:filter函数的作用和示例Python是一种功能强大的编程语言,提供了许多内置的函数,其中之一就是filter函数。filter函数用于过滤列表中的元素,并返回满足指定条件的元素组成的新列表。在本文中,我们将介绍filter函数的作用,并提供一些示例来帮助读者理解其用法和潜力。filter函数的语法如下:filter(function

Python函数介绍:zip函数的介绍及示例Python函数介绍:zip函数的介绍及示例Nov 03, 2023 pm 02:02 PM

Python函数介绍:zip函数的介绍及示例Python是一种高级语言,它提供了许多有用的函数来帮助开发人员快速地编写程序。其中一个函数就是zip函数。Zip函数是Python中的内置函数之一,它可以接受一组可迭代对象(包括列表、元组、集合和字典等),并返回一个由这些可迭代对象中的元素按顺序成对组成的元组。Zip函数可以用于多种情况,例如:1.将两个列表的元

Python函数介绍:range函数的介绍及示例Python函数介绍:range函数的介绍及示例Nov 04, 2023 am 10:10 AM

Python函数介绍:range函数的介绍及示例Python是一种广泛应用于各种领域的高级编程语言,它具有简单易学的特点,并且有着丰富的内置函数库。其中,range函数是Python中常用的一个内置函数之一。本文将详细介绍range函数的功能以及使用方法,并通过实例来演示其具体的应用。range函数是用来生成一个整数序列的函数,它接受三个参数,分别是起始值(

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい