-
几个扩展存储过程使用方法
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 -
mssql存储过程表名和字段名为变量的实现方法
没有使用动态语句直接报错错误的复制代码代码如下:alterproctestpapersasbegindeclare@temsnvarchar(max),@zidaunnvarchar(max)set@tems=select*from@temsorderby@zidaunexec(@tems)endexectestpapers消息156,级别15,状态1,过程testpapers,第1行关键字'select'附近有语法错误。消息1087,级别15,状态2,过程testpapers,第1行必须声明表变量"@tems"...
数据库操作教程 2022-09-23 20:33:48 -
根据表名和索引获取需要的列名的存储过程
复制代码代码如下:createprocp_sword_getblcolumn(@tblNamevarchar(200),@fromIndexint,@toIndexint,@columnNamevarchar(3000)output)asbegindeclare@tempColumnvarchar(3000)declare@errMsgvarchar(200)declare@iintset@i=1set@columnName=''set@errMsg=''declaretempColumnCurcursorforselectsyscolumns.namefromsyscolumnsjoinsysobjectsonsyscolumns.id=sysobjects.idwheresysobjects.name=@tblNameorderbysyscolumns.colorderopentempColumnCurfetchnextfromtempColumnCurinto@tempColumnwhile@@FETCH_STATUS=0beginif(@fromIndex=0and@toInd...
数据库操作教程 2022-09-23 20:33:40 -
sql存储过程分页代码支持亿万庞大数据量
复制代码代码如下:CREATEPROCEDUREpage@tblNamevarchar(255),--表名@strGetFieldsvarchar(1000)='*',--需要返回的列@fldNamevarchar(255)='id',--排序的字段名@PageSizeint=10,--页尺寸@PageIndexint=1,--页码@doCountbit=0,--返回记录总数,非0值则返回@OrderTypebit=0,--设置排序类型,非0值则降序0:asc1:desc@strWherevarchar(1500)='',--查询条件(注意:不要加where)@IDnvarchar(50)='id'--主表的列。...
数据库操作教程 2022-09-23 20:33:16 -
自己收集比较强大的分页存储过程推荐
(下面的代码原来我想用折叠的代码的,但是在google里面老是添加不了折叠的代码,所以就整屏的贴出来了,望大家不要见外。)朋友的比较好的存储过程...
数据库操作教程 2022-09-23 20:33:10 -
SQLserver数据库危险存储过程删除与恢复方法
今天为了实现SQLServer/"target="_blank">sqlserver的复制功能,因为以前删除了很多的sqlserver的一些会导致不安全因素的扩展,导致很多功能无法用,没有办法需要重新的恢复扩展。曾经遇过,差点抓狂,有装MSSQL的朋友,赶紧试一下,删除以下的组件.当然,前提是你要把自己的数据库搞定后再去删除,否则组件删除后很多功能不能用,为了安全,就得牺牲某些功能,当然,像我这类的,我除了把MSSQL导入后,基本上一年用不到两次,所以,我是会毫不犹豫地删除,嘿.一,将有安全问题的SQL过程删除.比较全面.一切为了安全!删除了调用shell,注册表,COM组件的破坏权限MSSQLSERVER2000使用系统帐户登陆查询分析器运行以下脚本复制代码代码如下:usemasterexecsp_dropextendedproc'xp_cmdshell'execsp_dropextendedproc'xp_enumgroups'execsp_dropextendedproc'xp_loginconfig'execsp_dropextendedproc'xp_enumerror...
数据库操作教程 2022-09-23 20:32:55 -
sqlserver存储过程动态参数调用实现代码
只是做笔记,没什么!!复制代码代码如下:--创建测试表CREATETABLE[dbo].[Student]([ID][int]IDENTITY(1,1)NOTNULLPRIMARYKEY,[Name][nvarchar](20)NOTNULLDEFAULT(''),[Age][int]NOTNULLDEFAULT(0),[Sex][bit]NOTNULLDEFAULT(0),[Address][nvarchar](200)NOTNULLDEFAULT(''))--比如是一个查询存储过程CreatePROCGetStudentByType@typeint=0,--1根据id查询,2根据性别查询@argsXML--参数都写到这里吧ASBEGINDECLARE@idINT,@sexBITSET@id=@args...
数据库操作教程 2022-09-23 20:31:45 -
扩展性很好的一个分页存储过程分享
这是经常用的一个分页存储过程希望大家指点不足复制代码代码如下:USE[a6756475746]GO/******Object:StoredProcedure[dbo].[tbl_order_SearchWhereAndPage]ScriptDate:11/01/201109:37:39******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROCEDURE[dbo]...
数据库操作教程 2022-09-23 20:31:39 -
分页存储过程(三)在sqlserver中打造更加准确的分页结果
有人提出游标不好,会锁定行,幸亏我锁定的是临时表,不是数据表,不影响数据表的写操作。下面是14楼的回复,让我茅塞顿开,于是有了今天的改进版,取消了游标的使用,临时表还是存在的,谢谢...
数据库操作教程 2022-09-23 20:26:48 -
SQLServer分页查询存储过程代码
复制代码代码如下:CREATEPROCEDURE[dbo].[up_Pager]@tablevarchar(2000),--表名@colvarchar(50),--按该列来进行分页@orderbybit,--排序,0-顺序,1-倒序@collistvarchar(800),--要查询出的字段列表,*表示全部字段@pagesizeint,--每页记录数@pageint,--指定页@conditionvarchar(800)--查询条件ASDECLARE@sqlnvarchar(4000),@where1varchar(800),@where2varchar(800),@total_Itemint,@total_PageintIF@conditionisnullorrtrim(@condition)=''BEGIN--没有查询条件SET@where1='WHERE'SET@where2=''ENDELSEBEGIN--有查询条件SET@where1='WHERE('+@condition+')AND'--本来有条件再加上此条件SET@where2='WHERE('+@condition+'...
数据库操作教程 2022-09-23 20:26:08 -
SQLServer存储过程解析
存储过程功能的优点 为什么要使用存储过程?以下是存储过程技术的几大主要优点: 预编译执行程序。SQLServer只需要对每一个存储过程进行一次编译,然后就可以重复使用执行计划...
数据库操作教程 2022-09-23 20:25:55 -
SQL中sp_executesql存储过程的使用帮助
摘自SQLserver帮助文档对大家优查询速度有帮助!建议使用sp_executesql而不要使用EXECUTE语句执行字符串。支持参数替换不仅使sp_executesql比EXECUTE更通用,而且还使sp_executesql更有效,因为它生成的执行计划更有可能被SQLServer重新使用...
数据库操作教程 2022-09-23 20:25:44