-
几个扩展存储过程使用方法
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 -
用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
用SQL语句添加删除修改字段1.增加字段altertabledocdspadddspcodechar(200)2.删除字段ALTERTABLEtable_NAMEDROPCOLUMNcolumn_NAME3.修改字段类型ALTERTABLEtable_nameALTERCOLUMNcolumn_namenew_data_type4.sp_rename改名更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。语法sp_rename[@objname=]'object_name',[@newname=]'new_name'[,[@objtype=]'object_type']如:EXECsp_rename'newname','PartStock'5.sp_help显示表的一些基本情况sp_help'object_name'如:EXECsp_help'PartStock'6.判断某一表PartStock中字段PartVelocity是否存在ifexists(select*fromsyscolumnswhereid=object_id('PartStock')andname='Pa...
数据库操作教程 2022-09-23 20:34:32 -
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 -
很有意思的SQL多行数据拼接
要实现的SQL查询很原始:要求从第一个表进行查询得到第二个表格式的数据,上网查询之后竟然能写出下面的SQL:复制代码代码如下:select*fromuserinoSELECT*FROM(SELECTDISTINCTuserpartFROMuserino)AOUTERAPPLY(SELECT[usernames]=replace(replace(replace((SELECTusernameasvalueFROMuserinoNWHEREuserpart=A.userpartorderbyn.usernameascFORXMLAUTO),'"/><Nvalue="','/'),'<Nvalue="',''),'"/>',''))NOUTERAPPLY(SELECT[username_cns]=replace(replace(replace((SELECTusername_cnasvalueFROMuserinoMWHEREuserpart=A.userpartorderbym.usernameascFORXMLAUTO),'"/><Mvalue="',...
数据库操作教程 2022-09-23 20:31:17 -
sqlserver中操作主从关系表的sql语句
典型的方法就是对于主表的各数据字段进行更新或新增,对于从表一般都会先删除相关的所有记录,然后再进行插入。也就是说每次保存时,从表的数据都要重新执行一遍删除再插入的过程...
数据库操作教程 2022-09-23 20:28:31 -
分页存储过程(三)在sqlserver中打造更加准确的分页结果
有人提出游标不好,会锁定行,幸亏我锁定的是临时表,不是数据表,不影响数据表的写操作。下面是14楼的回复,让我茅塞顿开,于是有了今天的改进版,取消了游标的使用,临时表还是存在的,谢谢...
数据库操作教程 2022-09-23 20:26:48