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

寻技术 SQLServer 2023年10月29日 146

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 sysobjects
WHERE xtype='u'
ORDER BY name

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

SELECT  a.name 数据表,
        b.rows 数据总条数
FROM    sysobjects AS a
        INNER JOIN sysindexes AS b ON a.id = b.id
WHERE   ( 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    sysindexes
WHERE   indid = 1
ORDER BY rows DESC ,
        数据表 ,
        reserved DESC;
关闭

用微信“扫一扫”