SQL如何查询服务器下所有数据库及数据库的全部表

SQL查询服务器下所有数据库及数据库的全部表

获取所有用户名

SELECT * FROM sys.sysusers

获取所有用户数据库

SELECT * FROM sys.sysdatabases

案例

获取库中所有的表名

SELECT * FROM 库名.sys.tables

案例

获取某个表的字段名

select * from 库名.sys.columns WHERE object_id IN (SELECT object_id FROM 库名.sys.tables WHERE name='表名')

案例

补充:SqlServer中查询某数据库所有表及其数据总条数和占用空间

1.查询某数据库中的所有数据表

SELECT name 数据表FROM sysobjectsWHERE xtype='u'ORDER BY name

2.查询某数据库中的所有数据表及其数据总条数

SELECT  a.name 数据表,        b.rows 数据总条数FROM    sysobjects AS a        INNER JOIN sysindexes AS b ON a.id = b.idWHERE   ( a.type = 'u' )        AND ( b.indid IN ( 0, 1 ) )ORDER BY a.name,b.rows DESC;

3.查询某数据库中的所有数据表及其数据总条数所占用的空间大小

SELECT  OBJECT_NAME(id) 数据表,        RTRIM(8 * dpages) + 'KB' 占用空间大小,        rows 数据总条数FROM    sysindexesWHERE   indid = 1ORDER BY rows DESC ,        数据表 ,        reserved DESC;