asp.net c# Design Pattern WebService Windows Report Control Mobile
asp.net c# Design Pattern WebService Windows Report Control Mobile
笑缘的DotNet-Thinking->Asking&Studying->Doing
以镜为鉴,可正衣冠; 以人为鉴,可明是非; 以史为鉴,可知兴衰; 以败为鉴,可预胜负。
博客园
首页
新随笔
联系
订阅
管理
随笔分类
(81)
01 Asp.net(23)
(rss)
02 C# WINDOWS(28)
(rss)
03 Web Service(13)
(rss)
04 Design Pattern(2)
(rss)
05 ORM (1)
(rss)
06 Report(1)
(rss)
07 Share Point Development(2)
(rss)
08 Source Codes Management
(rss)
09 BI Learning(1)
(rss)
10 Travel Log(2)
(rss)
11 Besides Coding(8)
(rss)
文章分类
(3)
1 ASP.NET (1)
(rss)
2 C# WINDOWS(2)
(rss)
3 Web Service
(rss)
4 Design Pattern
(rss)
5 FrameWork
(rss)
6 Solution
(rss)
7 ORM
(rss)
8 Scripts
(rss)
随笔档案
(65)
2008年7月 (1)
2008年4月 (1)
2008年2月 (1)
2008年1月 (9)
2007年12月 (7)
2007年11月 (4)
2007年10月 (3)
2007年9月 (6)
2007年8月 (5)
2007年6月 (1)
2007年5月 (1)
2007年4月 (9)
2007年3月 (16)
2007年2月 (1)
文章档案
(3)
2007年3月 (1)
2007年2月 (2)
最新随笔
1. 最近开始学习BI了
2. 我们需要更团结 希望大家奔走先告(转)
3. 学会忘记,学会原谅!
4. .NET Framework 开源咯
5. 软件项目团队有效性和五原则
6. 提高程序的传输效率,减少带宽的占用,启用IIS6中GZip压缩
7. 分页存储过程(收藏)
8. asp.net页面的生存周期
9. C#异步多线程AD浏览器(一)
10. 使用HttpContext的User属性来实现用户验证
11. Visual Studio Team System 2008 Setup
12. 怎样让.Net2.0的Membership使用已存在的Sql Server2000/2005数据库(转)
13. 五种提高 SQL 性能的方法(转。收藏)
14. C#实现Web程序调用Windows程序的方法
15. SharePoint2007开发(二)Hello WebPart
最新评论
1. re: 使用VS2008进行VSTO-Addin实战开发-创建自己的工具栏(二)
部署起来好麻烦
--ZZHHPE
2. re: 使用VS2008进行VSTO-Addin实战开发-创建自己的工具栏(二)
在别人的电脑上用过了没有?
--ZZHHPE
3. re: net2.0下多线程实现串口接收GPS数据读写
楼主的设备是主动试发送数据的吧,我想问的是 如果我的设备是被动试发送数据的怎么办?我的设备是我发送AT指令了设备才会返回数据,不发送AT指令设备就会把数据放到缓存区
--李祥
4. re: C#2005实现监视本地网络速度
谢了 先研究一下
--谢谢
分页存储过程(收藏)
Posted on 2008-01-15 18:03
笑缘
阅读(93)
评论(0)
编辑
收藏
所属分类:
02 C# WINDOWS
、
01 Asp.net
、
03 Web Service
前几天去面试,问我写没写过分页存储过程,这个东西其实很简单,以前也经常用,但是从没有自己写过实现,所以就说没有写过。就因为这个就直接fail了。
今天把这个存储过程放到这里作为警言
--
获取指定页的数据
Create
PROCEDURE
pagination
@tblName
varchar
(
255
),
--
表名
@strGetFields
varchar
(
1000
)
=
'
*
'
,
--
需要返回的列
@fldName
varchar
(
255
)
=
''
,
--
排序的字段名
@PageSize
int
=
10
,
--
页尺寸
@PageIndex
int
=
1
,
--
页码
@doCount
bit
=
0
,
--
返回记录总数, 非 0 值则返回
@OrderType
bit
=
0
,
--
设置排序类型, 非 0 值则降序
@strWhere
varchar
(
1500
)
=
''
--
查询条件 (注意: 不要加 where)
AS
declare
@strSQL
varchar
(
5000
)
--
主语句
declare
@strTmp
varchar
(
110
)
--
临时变量
declare
@strOrder
varchar
(
400
)
--
排序类型
if
@doCount
!=
0
begin
if
@strWhere
!=
''
set
@strSQL
=
"
select
count
(
*
)
as
Total
from
[
" + @tblName + "
]
where
"
+
@strWhere
else
set
@strSQL
=
"
select
count
(
*
)
as
Total
from
[
" + @tblName + "
]
"
end
--
以上代码的意思是如果@doCount传递过来的不是0,就执行总数统计。以下的所有代码都是@doCount为0的情况
else
begin
if
@OrderType
!=
0
begin
set
@strTmp
=
"
<
(
select
min
"
set
@strOrder
=
"
order
by
[
" + @fldName +"
]
desc
"
--
如果@OrderType不是0,就执行降序,这句很重要!
end
else
begin
set
@strTmp
=
"
>
(
select
max
"
set
@strOrder
=
"
order
by
[
" + @fldName +"
]
asc
"
end
if
@PageIndex
=
1
begin
if
@strWhere
!=
''
set
@strSQL
=
"
select
top
"
+
str
(
@PageSize
)
+
" "
+
@strGetFields
+
"
from
[
" + @tblName + "
]
where
"
+
@strWhere
+
" "
+
@strOrder
else
set
@strSQL
=
"
select
top
"
+
str
(
@PageSize
)
+
" "
+
@strGetFields
+
"
from
[
"+ @tblName + "
]
"
+
@strOrder
--
如果是第一页就执行以上代码,这样会加快执行速度
end
else
begin
--
以下代码赋予了@strSQL以真正执行的SQL代码
set
@strSQL
=
"
select
top
"
+
str
(
@PageSize
)
+
" "
+
@strGetFields
+
"
from
[
"
+ @tblName + "
]
where
[
" + @fldName + "
]
"
+
@strTmp
+
"(
[
"+ @fldName + "
]
)
from
(
select
top
"
+
str
((
@PageIndex
-
1
)
*
@PageSize
)
+
"
[
"+ @fldName + "
]
from
[
" + @tblName + "
]
"
+
@strOrder
+
")
as
tblTmp)"
+
@strOrder
if
@strWhere
!=
''
set
@strSQL
=
"
select
top
"
+
str
(
@PageSize
)
+
" "
+
@strGetFields
+
"
from
[
"
+ @tblName + "
]
where
[
" + @fldName + "
]
"
+
@strTmp
+
"(
[
"
+ @fldName + "
]
)
from
(
select
top
"
+
str
((
@PageIndex
-
1
)
*
@PageSize
)
+
"
[
"
+ @fldName + "
]
from
[
" + @tblName + "
]
where
"
+
@strWhere
+
" "
+
@strOrder
+
")
as
tblTmp)
and
"
+
@strWhere
+
" "
+
@strOrder
end
end
exec
(
@strSQL
)
GO
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
闪存
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
"五向定位"职业成长路线公开课(上海、南京、大连)
Google站内搜索
相关文章:
C#字符串分割
如何配置C#命令行编译器
oracle的存储过程如何返回结果集
(原创)动态模板列更新数据分页的例子
FileInfo 复制文件 是否完成 如何判断 C#
C# 外网如何用TCP向内网传文件?
C# 来这里学习C#吧
C# 委托
相关链接:
所属分类的其他文章:
.NET Framework 开源咯
分页存储过程(收藏)
C#异步多线程AD浏览器(一)
五种提高 SQL 性能的方法(转。收藏)
.NET开发中的一些小技巧(转)
C#实现Web程序调用Windows程序的方法
获取Setup文件的运行路径
将数据库表中的数据生成Insert脚本的存储过程(改版)
使用VS2008进行VSTO-Addin实战开发-创建自己的工具栏(二)
使用VS2008进行VSTO-Addin实战开发-创建自己的菜单(一)
最新IT新闻:
微软首次打破先例 Windows 7不再改名
亚马逊EC2云计算计划支持Windows操作系统
鲍尔默失望变希望 幸亏当初未收购雅虎
微软12月举办硬件工程大会 Windows7将首次亮相
电脑程序与12位真人聊天 “艾尔博特”骗过3人
公告
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
Friends
GalileoWorld
风生水起
(rss)
涵思
(rss)
快乐着做梦 幸福着生活!
我参与的团队
.Net 商业智能(0/384)
上海.NET俱乐部(0/2250)
Windows Mobile 应用开发(0/604)
Ajax&Atlas技术团队(0/1138)
O/R Mapping团队(0/209)
积分与排名
积分 - 43428
排名 - 1017
评论排行榜
1. net2.0下多线程实现串口接收GPS数据读写(20)
2. C#2005实现监视本地网络速度(19)
3. 简历(10)
4. 获取Setup文件的运行路径(10)
5. 杭州印象(8)
6. C#实现Socket传输简单数据(7)
7. Design & Pattern团队 还能加入吗?(6)
8. .NET开发资源精华收集,欢迎访问及推荐资源(6)
9. vs2008 beta2 安装截图(6)
10. 使用VS2008进行VSTO-Addin实战开发-创建自己的菜单(一)(4)
11. Visual Studio Team System 2008 Setup(4)
12. 使windows应用程序中只有一个实例 (4)
13. 好可爱的星座!(转)(4)
14. 转:这个一定要看...(4)
15. 在XPO中实现sql中的函数功能(3)
阅读排行榜
1. net2.0下多线程实现串口接收GPS数据读写(5137)
2. C#实现Socket传输简单数据(3371)
3. C#2005实现监视本地网络速度(2377)
4. 在XPO中实现sql中的函数功能(2309)
5. 如何看手相 男左女右(2192)
6. 在ASP.NET中页面传值的几种方式(转:具体地址记不清了)(2092)
7. 在XtraReport中实现分组中的行号从新计算(2009)
8. 获取Setup文件的运行路径(1604)
9. 使用VS2008进行VSTO-Addin实战开发-创建自己的菜单(一)(1178)
10. Design & Pattern团队 还能加入吗?(1121)
11. 简历(1000)
12. .NET开发资源精华收集,欢迎访问及推荐资源(998)
13. 如何使用串口控件MSComm在dotNet下编程(转)(912)
14. Visual Studio Team System 2008 Setup(765)
15. .NET反编译工具Reflector及插件(转)(712)
posts - 70, comments - 142, trackbacks - 6, articles - 2
Copyright © 笑缘
asp.net c# Design Pattern WebService Windows Report Control Mobile
asp.net c# Design Pattern WebService Windows Report Control Mobile