网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > SQL技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.SQL Server 2000数据库FOR XML查.
.删除流氓的SQL Server2005.
.减少每次的同步数据量以此来提高.
.轻松掌握SQL Server数据同步技术.
.带你深入了解数据库管理系统层次.
.SELECT语句中“加锁选项”功能说.
.个人经验总结:数据挖掘与数据抽.
.SQL Server 2000和 SQL Server 2.
.SQL Artisan组件之Query对象.
.利用自定义分页技术提高数据库性.
.在SQL2000查询中使用XDR的例子.
.讲解优化数据库时必须注意的一些.
.SQLite数据库用来处理锁定情况的.
.如何在SQL Server中恢复数据.
.仅允许指定的机器连接SQL Server.
.使用SQL语句获取SQL Server数据库.
.通用SQL数据库查询语句精华使用简.
.无法在 SQL Server 2005 Manger .
.删除无效的SQL SERVER组的几种方.
.数据抽取、清洗与转换 BI项目中E.

分页存储过程

发表日期:2007-2-3


create procedure ProgrameName
(@nvar Int,
@pagesize int,
@pageindex int,
@docount bit)
as
set nocount on
if(@docount=1)
select count(num) from TableName where 1=1
else
begin
declare @indextable table(id int identity(1,1),nid int)
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
set rowcount @PageUpperBound
insert into @indextable(nid) select ID from TableName  where 1=1 order by num desc
select * from TableName O,@indextable t where O.ID=t.nid
and t.id between @PageLowerBound+1 and @PageUpperBound order by t.id
end
set nocount off

-----------------------------------------
如何创建内存临时表?
      
想在内存里创建一个临时表,
--------------------------------------------------------------- 

create  #abc(field1...)即可,可以写成存储过程在delphi中调用 

--------------------------------------------------------------- 

创建一个局部临时表: 

create  table  #tab(id  int  primary  key,name  varchar(10)) 

创建一个全局临时表: 

create  table  ##tab(id  int  primary  key,name  varchar(10)) 

使用表变量: 

declare  @tab  table(id  int,name  varchar(10))

-----------------------------

可以创建临时表。临时表与永久表相似,但临时表存储在 tempdb 中,当不再使用时会自动删除。

有本地和全局两种类型的临时表,二者在名称、可见性和可用性上均不相同。本地临时表的名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 Microsoft SQL Server实例断开连接时被删除。全局临时表的名称以数学符号 (##) 打头,创建后对任何用户都是可见的,当所有引用该表的用户从 SQL Server 断开连接时被删除。

例如,如果创建名为 employees 的表,则任何人只要在数据库中有使用该表的安全权限就可以使用该表,除非它已删除。如果创建名为 #employees 的本地临时表,只有您能对该表执行操作且在断开连接时该表删除。如果创建名为 ##employees 的全局临时表,数据表中的任何用户均可对该表执行操作。如果该表在您创建后没有其他用户使用,则当您断开连接时该表删除。如果该表在您创建后有其他用户使用,则 SQL Server在所有用户断开连接后删除该表。

举例:create table #yangkunjie或者create table ##yangkunjie(全局)

上一篇:SQL SERVER 和EXCEL的数据导入导出 人气:4919
下一篇:SQL server 2000存储过程 人气:6631
浏览全部存储过程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐