-
sqlserver通用的删除服务器上的所有相同后缀的临时表
复制代码代码如下:usetempdbifobject_id('tempdb..#table')isnotnulldroptabletempdb..#tableselectnameintotempdb..#tablefrom(select*fromsysobjectswherextype='U')awherea.namelike'%test_select'declare@tablevarchar(100),@countintselect@count=count(name)fromtempdb..#tablewhile(@count>0)beginselecttop1@table=namefromtempdb..#tableexec('ifobject_id('''+@table+''')isnotnulldroptable'+@table+'deletefromtempdb..#tablewherename='''+@table+'''')set@count=@count-1enddroptabletempdb..#table建议:尽量不要大量使用临时表,因为使用tempdb库会使...
数据库操作教程 2022-09-23 17:09:11 -
sql不常用函数总结以及事务,增加,删除触发器
sql不常用函数总结以及事务,增加,删除触发器distinct删除重复行declare@x申明一个变量convert(varchar(20),tscore.tenglish)类型转换cast(xxasvarchar(10))类型转换www...
数据库操作教程 2022-09-23 17:08:54 -
判断触发器正在处理的是插入,删除还是更新触发
但是有时候,可以视看处进逻辑程度,可以把三者写成一个触发器,只是在其中稍作判断而已。你可以根据从下面方法判断触发器是是处理了插入,删除还是更新触发的:复制代码代码如下:--宣告两个变量DECLARE@DBIT=0DECLARE@IBIT=0--如果在DELETED内部临时触发表找到记录,说明旧数据被删除IFEXISTS(SELECTTOP11FROMDELETED)SET@D=1--如果在INSERTED内部临时触发表找到记录,说明有新数据插入IFEXISTS(SELECTTOP11FROMINSERTED)SET@I=1--如果两个表都有记录,说明触发器是执行更新触发IF@I=1AND@D=1PRINT(N'更新...
数据库操作教程 2022-09-23 17:07:51 -
SQLServer误区30日谈第9天数据库文件收缩不会影响性能
误区#9:数据库文件收缩不会影响性能错误! 收缩数据库文件唯一不影响性能的情况是文件末尾有剩余空间的情况下,收缩文件指定了TruncateOnly选项。 收缩文件的过程非常影响性能,这个过程需要移动大量数据从而造成大量IO,这个过程会被记录到日志从而造成日志暴涨,相应的,还会占去大量的CPU资源...
数据库操作教程 2022-09-23 17:07:25 -
SQLServer误区30日谈第12天TempDB的文件数和需要和CPU数目保持一致
误区#12:TempDB的文件数和需要和CPU数目保持一致错误 哎,由于上述误区是微软“官方”的建议,并且还有大量博文坚持这个观点,这个误区已经是老生常谈。 但让人困惑的是SQLCAT团队给出的建议就是1:1,但这个建议是源自扩展方面的原理来说,而不是一个通用法则...
数据库操作教程 2022-09-23 17:07:06 -
SQLServer中减小Log文件尺寸的方法分享
首先use[数据库名称];execsp_helpfile;使用sp_helpfile查询可知道log文件的逻辑名称,然后就可以利用DBCC来减小LOG文件BACKUPLOG[数据库名]WITHTRUNCATE_ONLYdbccshrinkfile([log文件的逻辑名称],1)这个方法在MSSQLServer2008以及MSSQLServer2008R2中不再适用,会提示:TRUNCATE_ONLYisnotavalidBACKUPoption.应当采取这样的操作方法:复制代码代码如下:--首先把数据库的恢复模式改为SimpleALTERDATABASE[数据库名]SETRECOVERYSIMPLE;GO--缩小log文件至1M,逻辑名称可以通过sp_helpfile拿到DBCCSHRINKFILE([log文件逻辑名称],1);GO--重置数据库的恢复模式ALTERDATABASE[数据库名]SETRECOVERYFULL;GO...
数据库操作教程 2022-09-23 17:06:55 -
SQL语句删除2条重复数据一条保留一条
--任意的测试表复制代码代码如下:CREATETABLEtest_delete(namevarchar(10),valueINT);go--张三100与王五80是有重复的INSERTINTOtest_deleteSELECT'张三',100UNIONALLSELECT'张三',100UNIONALLSELECT'李四',80UNIONALLSELECT'王五',80UNIONALLSELECT'王五',80UNIONALLSELECT'赵六',90UNIONALLSELECT'赵六',70go--测试检索数据SELECTROW_NUMBER()OVER(PARTITIONBYname,valueORDERBY(SELECT1))ASno,name,valueFROMtest_deletenonamevalue-----------------------------------------1李四801王五802王五801张三1002张三1001赵六701赵六90--创建视图复制代码代码如下:CREATEVIEWtmp_viewASSELECTROW_NUMBER()OVER(PARTI...
数据库操作教程 2022-09-23 17:06:52 -
SQLserver删除某数据库中所有表实现思路
方便删除数据库中所有的数据表,清空数据库,有些有约束,不能直接delete,需要先删除库中的约束,代码如下复制代码代码如下:--删除所有约束DECLAREc1cursorforselect'altertable['+object_name(parent_obj)+']dropconstraint['+name+'];'fromsysobjectswherextype='F'openc1declare@c1varchar(8000)fetchnextfromc1into@c1while(@@fetch_status=0)beginexec(@c1)fetchnextfromc1into@c1endclosec1deallocatec1--删除数据库所有表declare@tnamevarchar(8000)set@tname=''select@tname=@tname+Name+','fromsysobjectswherextype='U'select@tname='droptable'+left(@tname,len(@tname)-1)exec(@tname)然后清空数据库中的所有表:...
数据库操作教程 2022-09-23 17:06:51 -
SQLServer利用bcp命令把SQL语句结果生成文本文件
在SQLServer里可以调用DOS下的命令行工具bcp来实现把表里的数据或者SQL语句结果生成文本文件。BCP命令的参数格式:复制代码代码如下:BCP{dbtable|query}{in|out|queryout|format}datafile[-mmaxerrors] [-fformatfile] [-eerrfile][-Ffirstrow] [-Llastrow] [-bbatchsize][-nnativetype] [-ccharactertype] [-wwidecharactertype][-Nkeepnon-textnative][-Vfileformatversion][-qquotedidentifier][-Ccodepagespecifier] [-tfieldterminator] [-rrowterminator][-iinputfile] [-ooutfile] [-apacketsize][-Sservername] [-Uusername] [-Ppasswor...
数据库操作教程 2022-09-23 17:06:43 -
SQLServer误区30日谈第22天资源调控器可以调控IO
误区#22:资源调控器可以调控IO错误 资源调控器无法调控IO,希望下一个版本的SQLServer支持调控IO,调控IO对于对于减少对于大表的scan操作带来的性能影响很有帮助。 下面列表中的功能资源调控器同样也无法完成:调控BufferPool的内存,内存调控器仅仅可以调控执行计划所占的内存,但对于BufferPool中缓存的数据页是无法调控的可以对多个实例进行当作一个逻辑实体进行资源调控...
数据库操作教程 2022-09-23 17:04:02 -
浅谈SQLServer对于内存的管理[图文]
理解SQLServer对于内存的管理是对于SQLServer问题处理和性能调优的基本,本篇文章讲述SQLServer对于内存管理的内存原理。二级存储(secondarystorage) 对于计算机来说,存储体系是分层级的...
数据库操作教程 2022-09-23 17:02:37 -
SQLServer误区30日谈第3天即时文件初始化特性可以在SQLServer中开启和关闭
本系列文章是我在sqlskill.com的PAUL的博客看到的,很多误区都比较具有典型性和代表性,原文来自T-SQLTuesday#11:Misconceptionsabout....EVERYTHING!!,经过我们团队的翻译和整理发布在AgileSharp和博客园上。希望对大家有所帮助...
数据库操作教程 2022-09-23 17:01:25