-
SQLServer获得用户最新或前n条订单的几种SQL语句小结
实现以上要求,我们可以用以下几种方式,但是效率却相差很远。首先我们在Order表中,创建一个索引:CREATEUNIQUEINDEXidx_eid_odD_oidDONOrders(EmployeeID,OrderDateDESC,OrderIDDESC) 多个OrderId是为了在OrderData相同的情况下,按订单号倒序,是个辅助属性...
数据库操作教程 2022-09-23 20:41:00 -
在安装了Sql2000的基础上安装Sql2005的详细过程图文
Sql2005版本:Sql2005开发版,两张CD的那种操作系统:Window2003Server假设您的电脑已安装了Sql2000,下面开始安装Sql2005。一、运行光盘1跳过准备步骤,直接进行“服务器组件、工具、联机丛书和示例”的安装...
数据库操作教程 2022-09-23 20:40:47 -
SQLSERVER对加密的存储过程、视图、触发器进行解密(推荐)
加密测试的存储过程IFEXISTS(SELECT1FROMSYSOBJECTSWHERETYPE='P'ANDNAME='P_TEST')DROPPROCEDUREP_TESTGOCREATEPROCEDUREP_TEST(@USERNAMEVARCHAR(20),@MSGVARCHAR(20)OUTPUT)WITHENCRYPTIONASBEGINIF(SELECTCOUNT(1)FROMCustsWHERENAME=@USERNAME)>0SET@MSG='此用户名存在'ELSESET@MSG='此用户名不存在'END解密的存储过程CreatePROCEDUREDecryption(@proceduresysname=NULL)ASSETNOCOUNTONDECLARE@intProcSpacebigint,@tbigint,@maxColIDsmallint,@procNameLengthintselect@maxColID=max(subobjid)FROMsys.sysobjvaluesWHEREobjid=object_id(@procedure)--select@m...
数据库操作教程 2022-09-23 20:40:33 -
SQLServer的通用分页存储过程未使用游标,速度更快!
正常情况下,SQLServer服务器上会对使用频率大的Table建立合适的索引这样能大幅度的提高数据库本身的数据检索速度,建立索引的方法就不细说了如果需要返回大量数据,从几百行到几万行,甚至几十万行数据这时会发现响应速度越来越慢,甚至发生响应超时的错误为了解决这种大数据量请求的问题,就不得不使用分页模式了在这方面,JDBC就强悍得多,它可以将指定的行数和SQL请求一并发送给SQLServer,这样只返回分页后的数据,JDBC的原理还不清楚,但在实际使用中,速度还是非常快的如果没办法使用JDBC,最常用的方法就是存储过程了!我在写这个分页存储之前,参考了网上的大量相关文章,可以通过关键字:SQLServer分页进行搜索他们主要都是利用SQL中的Top方法,并且对所检索的数据结构要求有标识列,如果没有标识列,或者是联合主键,那么就会非常麻烦了。而且对应用里原有的SQL检索部分需要修改的地方较多,工作量较大...
数据库操作教程 2022-09-23 20:39:35 -
一个基于ROW_NUMBER()的通用分页存储过程代码
建立好如下的存储过程,以后要分页,直接调用改存储过程就可以了。注意:数据量大、性能要求高的,请个性化处理...
数据库操作教程 2022-09-23 20:39:19 -
sqlserver千万数量级分页存储过程代码
复制代码代码如下:setANSI_NULLSONsetQUOTED_IDENTIFIERONgoCreatePROCEDURE[dbo].[SP_Pagination]/**//******************************************************************千万数量级分页存储过程*****************************************************************参数说明:1...
数据库操作教程 2022-09-23 20:38:46 -
sqlserver另类非递归的无限级分类(存储过程版)
下面是我统计的几种方案:第一种方案(递归式):简单的表结构为:CategoryIDint(4),CategoryNamenvarchar(50),ParentIDint(4),Depthint(4)这样根据ParentID一级级的运用递归找他的上级目录。还有可以为了方便添加CategoryLeft,CategoryRight保存他的上级目录或下级目录第二种方案:设置一个varchar类型的CategoryPath字段来保存目录的完整路径,将父目录id用符号分隔开来...
数据库操作教程 2022-09-23 20:38:41 -
SQLSERVERPagerstoreprocedure分页存储过程
复制代码代码如下:SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[Pagination]@Pageint=1,--当前页码@PageSizeint=10,--每页记录条数(页面大小)@Tablenvarchar(500),--表名或视图名,甚至可以是嵌套SQL:(Select*FromTabWhereID>1000)Tab@Fieldnvarchar(800)='*',--返回记录集字段名,","隔开,默认是"*"@OrderBynvarchar(100)='IDASC',--排序规则@Filternvarchar(500),--过滤条件@MaxPagesmallintoutput,--执行结果-1error,0false,maxpagetrue@TotalRowintoutput,--记录总数/*2007-07-1222:11:00update*/@Descriptvarchar(100)output--结果描述ASBEGIN--====================================...
数据库操作教程 2022-09-23 20:38:28 -
sqlserver批量删除存储过程和批量修改存储过程的语句
修改:复制代码代码如下:declareproccurcursorforselect[name]fromsysobjectswherenamelike'Foods_%'declare@procnamevarchar(100)declare@tempvarchar(100)openproccurfetchnextfromproccurinto@procnamewhile(@@FETCH_STATUS=0)beginset@temp='kcb_'+@procnameEXECSP_RENAME@procname,@tempprint(@procname+'已被删除')fetchnextfromproccurinto@procnameendcloseproccurdeallocateproccurdeclareproccurcursorforselect[name]fromsysobjectswherenamelike'kcb%'declare@procnamevarchar(100)declare@tempvarchar(100)declare@temp2varchar(100)declare...
数据库操作教程 2022-09-23 20:38:24 -
sqlserver存储过程分页代码第1/2页
复制代码代码如下:declare@TotalCountintdeclare@TotalPageCountintexecP_viewPage_A'type1','*','id','','idasc',1,0,4,3,@TotalCountoutput,@TotalPageCountoutputselect*fromtype1CreatePROCP_viewPage_A/*nzperfect[no_mIss]高效通用分页存储过程(双向检索)2007.5...
数据库操作教程 2022-09-23 20:37:43 -
几个扩展存储过程使用方法
SQLServer中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sqlserver7.0就有了,在SQLserver2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQLServer版本中访问系统注册表的能力,而且很多人利用SQLServer来进行攻击系统时,往往都会用到这几个扩展存储过程.所以最好在SQLServer中禁用他们.xp_regenumvalues以多个记录集方式返回所有键值使用方法:xp_regenumvalues注册表根键,子键比如说,想看看HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun的所有键值:usemasterexecxp_regenumvalues'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersionRun'execxp_regenumvalues'HKEY_LOCAL_MACHINE','SYSTEMRAdminv2.0ServerParameters'xp...
数据库操作教程 2022-09-23 20:35:02 -
sqlserver统计sql语句大全收藏
1.计算每个人的总成绩并排名selectname,sum(score)asallscorefromstuscoregroupbynameorderbyallscore2...
数据库操作教程 2022-09-23 20:33:56