原贴: https://www.mssqltips.com/sqlservertip/1414/run-same-command-on-all-sql-server-databases-without-cursors/

--This query will return a listing of all tables in all databases on a SQL instance:
DECLARE @command varchar(1000)
SELECT @command = 'USE ? SELECT name FROM sysobjects WHERE xtype = ''U'' ORDER BY name'
EXEC sp_MSforeachdb @command
--This statement creates a stored procedure in each user database that will return a listing of all users in a database, sorted by their modification date
DECLARE @command varchar(1000) SELECT @command = 'IF ''?'' NOT IN(''master'', ''model'', ''msdb'', ''tempdb'') BEGIN USE ? EXEC(''CREATE PROCEDURE pNewProcedure1 AS SELECT name, createdate, updatedate FROM sys.sysusers ORDER BY updatedate DESC'') END' EXEC sp_MSforeachdb @command
--This query will return a listing of all files in all databases on a SQL instance:

EXEC sp_MSforeachdb 'USE ? SELECT ''?'', SF.filename, SF.size FROM sys.sysfiles SF'

查询跨库存储过程调用,没有直接的方法:

DECLARE @sql NVARCHAR(2000)='USE ? 
SELECT DB_NAME();
SELECT DISTINCT so.name
FROM syscomments sc
INNER JOIN sysobjects so ON sc.id=so.id
WHERE sc.TEXT LIKE ''%P_ThisIsAStoredProcedure%''' EXEC sp_MSforeachdb @sql

联合sp_MSforeachdb,SP_MSFOREACHTABLE,sp_spaceused 查询各库各表的大小:

DECLARE @sql NVARCHAR(2000)='USE ^;
--SELECT DB_NAME();
EXEC sp_spaceused;
--EXEC SP_MSFOREACHTABLE ''EXEC sp_spaceused "?"'' CREATE TABLE #t
(
name VARCHAR(255),
ROWS BIGINT,
reserved VARCHAR(20),
DATA VARCHAR(20),
index_size VARCHAR(20),
unused VARCHAR(20)
)
EXEC sp_MSforeachtable "insert into #t exec sp_spaceused ''?''"
SELECT *,CAST(SUBSTRING(data,0,LEN(data)-2) AS float)/1024 as Data_MB FROM #t ORDER BY Data_MB desc
DROP TABLE #t
' EXEC sp_MSforeachdb @sql,'^'

查所有数据库表大小:

create table #temp1
([数据库名] varchar(50),
[数据库大小(MB)] dec (15,2),
[未分配空间(MB)] dec (15,2),
[保留(MB)] dec (15,2),
[数据(MB)] dec (15,2),
[索引(MB)] dec (15,2),
[未使用(MB)] dec (15,2)) insert into #temp1
exec sp_msforeachdb
'use ?;
select
db_name(),
convert(dec (15,2),(convert(dec (15,2),dbsize) + convert (dec (15,2),logsize)) * 8192 / 1048576),
convert(dec (15,2),(case when dbsize >= reservedpages then (convert (dec (15,2),dbsize) - convert (dec (15,2),reservedpages)) * 8192 / 1048576 else 0 end)),
convert(dec (15,2),reservedpages * 8192 / 1048576.),
convert(dec (15,2),pages * 8192 / 1048576.),
convert(dec (15,2),(usedpages - pages) * 8192 / 1048576.),
convert(dec (15,2),(reservedpages - usedpages) * 8192 / 1048576.)
FROM
(
SELECT sum(convert(bigint,case when status & 64 = 0 then size else 0 end)) AS dbsize
, sum(convert(bigint,case when status & 64 <> 0 then size else 0 end)) AS logsize
from dbo.[sysfiles]
) a
LEFT JOIN
(
select sum(a.total_pages) AS reservedpages,
SUM(a.used_pages) AS usedpages,
SUM(
CASE
-- XML-Index and FT-Index internal tables are not considered "data", but is part of "index_size"
When it.internal_type IN (202,204,211,212,213,214,215,216) Then 0
When a.type <> 1 Then a.used_pages
When p.index_id < 2 Then a.data_pages
Else 0
END
) AS pages
from [sys].[partitions] p join [sys].[allocation_units] a on p.partition_id = a.container_id
left join [sys].[internal_tables] it on p.object_id = it.object_id
) b ON 1=1
' select * from #temp1 ORDER BY [数据库大小(MB)] desc drop table #temp1

查询数据库某库下所有表的所有字段

SELECT TOP 100 a.TABLE_NAME,a.COLUMN_NAME,a.DATA_TYPE,a.CHARACTER_MAXIMUM_LENGTH,b.value
from information_schema.COLUMNS as a left join sys.extended_properties as b
on a.TABLE_NAME=OBJECT_NAME(b.major_id) and a.ORDINAL_POSITION=b.minor_id
where a.COLUMN_NAME LIKE '%parcelList%'

Run same command on all SQL Server databases without cursors的更多相关文章

  1. Describe in brief Databases and SQL Server Databases Architecture.

    Databases- A database is a structured collection of data.- Database can be thought as simple data fi ...

  2. BCP command usage in SQL Server

    The bcp Command-Line Utility You use the bcp (bulk copy program) tool to address the bulk movement o ...

  3. 转:Move all SQL Server system databases at one time

    Problem One task that you may need to do as a DBA is to move the system databases from one location ...

  4. P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1

    P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1       May ...

  5. Microsoft SQL Server Trace Flags

    Complete list of Microsoft SQL Server trace flags (585 trace flags) REMEMBER: Be extremely careful w ...

  6. Migrating Oracle on UNIX to SQL Server on Windows

    Appendices Published: April 27, 2005 On This Page Appendix A: SQL Server for Oracle Professionals Ap ...

  7. Microsoft SQL Server Version List [sqlserver 7.0-------sql server 2016]

    http://sqlserverbuilds.blogspot.jp/   What version of SQL Server do I have? This unofficial build ch ...

  8. Microsoft SQL Server Version List(SQL Server 版本)

    原帖地址 What version of SQL Server do I have? This unofficial build chart lists all of the known Servic ...

  9. Zabbix template for Microsoft SQL Server总结

      Zabbix template for Microsoft SQL Server介绍   这里介绍Zabbix下监控Microsoft SQL Server数据库非常好用的一个模板,模板名为&qu ...

随机推荐

  1. sqlplus实现上下翻页设置

    环境: 操作系统:red hat 5.8 OS 数据库:oracle 11g 11.2.0.1 安装软件:IO-Tty-1.07.tar. Term-ReadLine-Gnu-1.16.tar.uni ...

  2. 【Python之路Day12】网络篇之Paramiko

    paramiko模块,基于SSH用于连接远程服务器并执行相关操作. 一.安装 pip3 install paramiko 二.使用 1. SSHClient 用于连接远程服务器并执行基本命令 基于用户 ...

  3. Centos6.5 下安装PostgreSQL9.4数据库

    一.安装PostgreSQL源 CentOS 6.x 32bit rpm -Uvh http://yum.postgresql.org/9.4/redhat/rhel-6-i386/pgdg-cent ...

  4. 大熊君说说JS与设计模式之------中介者模式Mediator

    一,总体概要 1,笔者浅谈 我们从日常的生活中打个简单的比方,我们去房屋中介租房,房屋中介人在租房者和房东出租者之间形成一条中介.租房者并不关心他租谁的房.房东出租者也不关心他租给谁.因为有中介的存在 ...

  5. 深入探索AngularJS(持续更新)

    数据双向绑定并不是Angular最出彩的地方.大部分对AngularJs的介绍都偏重于使用,使用的学习只是学了AngularJs的API,而那只能AngularJs的很小一部分.随着使用越来越深,系统 ...

  6. [WinAPI] API 5 [遍历驱动器并获取驱动器属性]

    (1) GetLogicalDrives.获取主机中所有的逻辑驱动器,以BitMap的形式返回.◇返回值GetLogicalDrive函数返回一个DWORD类型的值,第一位表示所对应的驱动器是否存在. ...

  7. [J2ME] 获得MIDlet信息

    import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Form; import javax.microedi ...

  8. paip.取当天记录的方法sql跟hql hibernate

    paip.取当天记录的方法sql跟hql hibernate #------两个方法...函数法和日期计算法.. 函数法: DATEDIFF(d,createTime,GETDATE())=0   / ...

  9. paip.不同目录结构哈的文件批量比较

    paip.不同目录结构哈的文件批量比较 作者Attilax 艾龙,  EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/att ...

  10. iOS UICollectionView的实现

    ios的UICollectionView并不能在iOS6之前的版本中使用,为了兼容之前的版本需要自定义UICollectionView.写完之后发现人家已经有开源了,下过来看了看发现我是用UIScro ...