-
sql查看所有表大小的方法
复制代码代码如下:declare@id intdeclare@type character(2) declare@pages int declare@dbname &nbs...
数据库操作教程 2022-09-23 17:15:59 -
Sql学习第三天——SQL关于CTE(公用表达式)的递归查询使用
关于使用CTE(公用表表达式)的递归查询----SQLServer2005及以上版本 公用表表达式(CTE)具有一个重要的优点,那就是能够引用其自身,从而创建递归CTE。递归CTE是一个重复执行初始CTE以返回数据子集直到获取完整结果集的公用表表达式...
数据库操作教程 2022-09-23 17:10:05 -
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 -
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利用存储过程查看角色和用户信息的写法
1、查看服务器角色相关信息SP_HELPSRVROLESP_HELPSRVROLEMEMBER服务器角色SP_HELPSRVROLE服务器角色2、查看数据库角色相关信息SP_HELPROLESP_HELPROLEMEMBER数据库角色SP_HELPROLE数据库角色3、查看用户相关信息SP_HELPUSERSP_HELPUSER数据库用户名...
数据库操作教程 2022-09-23 17:06:38 -
sqlserver2012数据库所有表里查找某字符串的方法
复制代码代码如下:USE[数据库名称]; --1.定义需要查找的关键字。在搜索中,使用模糊搜索:LIKE'%@key_find%' DECLARE@key_findNVARCHAR(MAX)='123';--假设是找字符串"123" --2.用游标Cursor_Table,遍历所有表 DECLARECursor_TableCURSORFOR SELECTnamefromsysobjectsWHERExtype='u'ANDname<>'dtproperties'; OPENCursor_Table; DECLARE@tableNameNVARCHAR(MAX); FETCHNEXTfromCursor_TableINTO@tableName; WHILE@@fetch_status=0 BEGIN DECLARE@tempSQLTextNVARCHAR(MAX)=''; &...
数据库操作教程 2022-09-23 17:06:04 -
Sql批量替换所有表中内容
复制代码代码如下:declare@tvarchar(255),@cvarchar(255)declaretable_cursorcursorforselecta.name,b...
数据库操作教程 2022-09-23 17:04:45 -
SQLServer误区30日谈第6天有关NULL位图的三个误区
这样还能减少CPU缓存命中失效的问题(点击这个链接来查看CPU的缓存是如何工作的以及MESI协议)。下面让我们来揭穿三个有关NULL位图的普遍误区...
数据库操作教程 2022-09-23 17:02:22 -
关于SQL中CTE(公用表表达式)(CommonTableExpression)的总结
一.WITHAS的含义WITHAS短语,也叫做子查询部分(subqueryfactoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNIONALL的不同部分,作为提供数据的部分...
数据库操作教程 2022-09-23 17:01:44 -
浅谈SQLServer中的三种物理连接操作(性能比较)
在SQLServer中,我们所常见的表与表之间的InnerJoin,OuterJoin都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为LoopJoin,MergeJoin,HashJoin这三种物理连接中的一种。理解这三种物理连接是理解在表连接时解决性能问题的基础,下面我来对这三种连接的原理,适用场景进行描述...
数据库操作教程 2022-09-23 17:01:23