【sqlserver查询数据的所有表名和行数】教程文章相关的互联网学习教程文章

查询SQLServer启动时间的三种方法

上午在分析索引的使用情况,想看一下数据库什么时候启动的,确保统计的数据没有问题,可以使用下面三种方法查询:--2008及之后版本才有 SELECT sqlserver_start_time FROM sys.dm_os_sys_infoselect crdate from master..sysdatabaseswherename=tempdbSELECT login_time FROMsysprocesses WHEREspid= 1

查询SQLServerIndex上次Rebuild时间的方法

朋友有一个Rebuild Index的Job执行一般停掉了,问我是否可以查看哪些Index已经被Rebuild过了。本来以为Sys.index或者Sys.objects会存储类似的信息,结果没有找到。 从网上查了一下,SQL Server没有存储类似的信息。但是因为Rebuild Index会自动更新统计信息,而统计信息的更新时间是可以获得的。所以我们可以大致根据统计信息的时间来估计。 因为统计信息的更新也有可能是达到更新的阀值所做的更新,所以不是非常的准确。 具体...

SQL语句实现查询SQLServer服务器名称和IP地址

获取服务器名称:SELECT SERVERPROPERTY(MachineName) select @@SERVERNAME select HOST_NAME()获取IP地址可以使用xp_cmdshell执行ipconfig命令:--开启xp_cmdshell exec sp_configureshow advanced options, 1 reconfigure with override exec sp_configurexp_cmdshell, 1 reconfigure with override exec sp_configureshow advanced options, 0 reconfigure with override go begin declare @ipline varchar(200) decla...

SQL语句实现查询SQLServer内存使用状况

SELECT type,--Clerk的类型 sum(virtual_memory_reserved_kb)as vm_Reserved_kb,--保留的内存 sum(virtual_memory_committed_kb)as vm_Committed_kb,--提交的内存 sum(awe_allocated_kb)as awe_Allocated_kb,--开启AWE后使用的内存 sum(shared_memory_reserved_kb)as sm_Reserved_kb,--共享的保留内存 sum(shared_memory_committed_kb)as sm_Committed_kb,--共享的提交内存 sum(single_pages_kb)as SinlgePage_kb,-- B...

SQLServer查询数据库中表使用空间信息实现脚本

使用了微软提供的不公开的存储过程sp_MSforeachtable CREATE TABLE #temp (TableName NVARCHAR (128),RowsCnt VARCHAR (11),ReservedSpace VARCHAR(18),DataSpace VARCHAR(18),CombinedIndexSpace VARCHAR(18),UnusedSpace VARCHAR(18))EXEC sp_MSforeachtableINSERT INTO #temp (TableName, RowsCnt, ReservedSpace,DataSpace, CombinedIndexSpace, UnusedSpace) EXEC sp_spaceused ?, FALSESELECT TableName, RowsCnt,ReservedS...

如何查看SQLSERVER中某个查询用了多少TempDB空间【图】

在SQL Server中,TempDB主要负责供下述三类情况使用: 内部使用(排序、hash join、work table等) 外部使用(临时表,表变量等) 行版本控制(乐观并发控制) 而对于内部使用,一些比较复杂的查询中由于涉及到了大量的并行、排序等操作时就需要大量的内存空间,每一个查询在开始时都会由SQL Server预估需要多少内存,在具体的执行过程中,如果授予的内存不足,则需要将多出来的部分由TempDB处理,这也就是所谓的Spill to Tem...

在SQLServer中使用ISNULL执行空值判断查询

有如下查询:代码如下: select isnull(lastchanged,) as lastchanged from vhhostlist where s_comment=test202本来,ISNULL函数只有一个参数,它表示的含义就是判断这个参数的值是否为NULL,是NULL则返回TRUE,否则返回FALSE; 但是,在SQLServer的查询语句中,isnull需要两个参数,它的含义是如果参数1为NULL,则以参数2为isnull函数的返回值; 即,上面查询的的含义是,查询vhhostlist表中s_comment=test202那一行lastchanged字段...

教你如何看懂SQLServer查询计划【代码】【图】

对于SQL Server的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题,因此本文只谈优化查询时如何看懂SQL Server查询计划。毕竟我对SQL Server的认识有限,如有错误,也恳请您在发现后及时批评指正。 首先,打开【SQL Server Management Studio】,输入一个查询语句看看SQL Server是如何显示查询计划的吧。 说明:本文所演示的数据库,是我为一个演示程序专用准备的数据库,可以在此网页...

深入分析SqlServer查询计划【图】

对于SQL Server的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题, 因此本文只谈优化查询时如何看懂SQL Server查询计划。毕竟我对SQL Server的认识有限,如有错误,也恳请您在发现后及时批评指正。 首先,打开【SQL Server Management Studio】,输入一个查询语句看看SQL Server是如何显示查询计划的吧。 说明:本文所演示的数据库,是我为一个演示程序专用准备的数据库,可以在此网页...

SQLServer分页查询通用存储过程(只做分页查询用)

自开始做项目以来,一直在用。这段存储过程的的原创者(SORRY,忘记名字了),写得这段SQL代码很不错,我在这个基础上,按照我的习惯以及思维方式,调整了代码,只做分页查询用。/*---------------------------------------------- *procedure name : P_PageResult * author :Fay * create date : 2014-07-18 */ CREATE PROCEDURE prcPageResult -- 获得某一页的数据 -- @currPage int = 1, --当前页页码 (即Top currPage) @showCo...

查询Sqlserver数据库死锁的一个存储过程分享

使用sqlserver作为数据库的应用系统,都避免不了有时候会产生死锁, 死锁出现以后,维护人员或者开发人员大多只会通过sp_who来查找死锁的进程,然后用sp_kill杀掉。利用sp_who_lock这个存储过程,可以很方便的知道哪个进程出现了死锁,出现死锁的问题在哪里. 创建sp_who_lock存储过程CREATE procedure sp_who_lock as begin declare @spid int declare @blk int declare @count int declare @index int declare @lock...

强制SQLServer执行计划使用并行提升在复杂查询语句下的性能【图】

通过观察执行计划,发现之前的执行计划在很多大表连接的部分使用了Hash Join,由于涉及的表中数据众多,因此查询优化器选择使用并行执行,速度较快。而我们优化完的执行计划由于索引的存在,且表内数据非常大,过滤条件的值在一个很宽的统计信息步长范围内,导致估计行数出现较大偏差(过滤条件实际为15000行,步长内估计的平均行数为800行左右),因此查询优化器选择了Loop Join,且没有选择并行执行,因此执行时间不降反升。 由于...

查找sqlserver查询死锁源头的方法sqlserver死锁监控

查找出SQLServer的死锁和阻塞的源头 --查找出SQLServer死锁和阻塞的源头代码如下:use mastergodeclare @spid int,@bl intDECLARE s_cur CURSOR FORselect 0 ,blockedfrom (select * from sysprocesses where blocked>0 ) awhere not exists(select * from (select * from sysprocesses where blocked>0 ) bwhere a.blocked=spid)union select spid,blocked from sysprocesses where blocked>0OPEN s_curFETCH NEXT FROM s_cur ...

在SQLServer中查询资料库的TABLE数量与名称的sql语句

在SQL Server中 每一个database裡都有一个系统所产生的table sysobjects这一个table中记录了database中所有的table名称 我们可以用下面的SQL语法作查询的动作 代码如下:Select Name,id from sysobjects where xtype = U 其中xtype=U代表使用的table,若是使用xtype=S 则代表系统预设的table 在系统table中还有一个名叫syscolumns的table 他记录了栏位的资料 若是想要找出某一个table的栏位相关资料,可以用下面的SQL语法.. 代码如下...

关于SQLServer查询语句的使用【图】

一.查询第二个字母是t或者a的雇员的全部信息 代码如下: select * from employees where firstname like _[t,a]%注意:在sql中%表示字符串,所以不可像matlab一样用其注释,两个双斜线好像也不行,/**/可以,有网友说sql单行注释为-- 二.更改字段名 代码如下: select 名字 = firstname ,姓氏 = lastname from employees where firstname like _[t,a]%或者 代码如下: select firstname as 名字 , lastname as 姓氏 from employees ...