SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等

目录

写法1(推荐)

写法2:只获取库中表名、行数建表时间

写法3:只查看表名和建表时间

写法4:有点小问题,大佬帮忙改一下

写法5:查看某个数据库大小

写法5:查看某个表

写法1(推荐)

SQL:

USE [test] -- 只需修改这里的库名

SELECT  a.name table_name, -- 表名
        a.crdate crdate, -- 建表时间
        b.rows rows, -- 总行数
        8*b.reserved/1024 reserved, -- 保留大小(MB)
        rtrim(8*b.dpages/1024) used, -- 已使用大小(MB)
        8*(b.reserved-b.dpages)/1024 unused -- 未使用大小(MB)
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;

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等


写法2:只获取库中表名、行数建表时间

SQL:


USE [test] -- 只需修改这里的库名

SELECT A.NAME ,B.ROWS,crdate 
FROM sysobjects A JOIN sysindexes B ON A.id = B.id 
WHERE A.xtype = 'U' AND B.indid IN(0,1) 
ORDER BY B.ROWS DESC

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等


写法3:只查看表名和建表时间

SQL:

USE [test] -- 只需修改这里的库名

select name,crdate from sysobjects where xtype = 'U'

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等


写法4:有点小问题,大佬帮忙改一下

SQL:

select object_name(id) tablename,
         8*reserved/1024 reserved,
         rtrim(8*dpages/1024)+'Mb' used,
         8*(reserved-dpages)/1024 unused,
       8*dpages/1024-rows/1024*minlen/1024 free,
       rows ,
       t.create_date,
       t.modify_date 
from sysindexes,sys.tables as t
where  object_name(id) = 'test1'

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等


写法5:查看某个数据库大小

SQL:


exec sp_spaceused;

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等


写法5:查看某个表

SQL:


EXEC sp_spaceused 'test1'; -- 只需修改表名即可

案例:

SQL获取数据库中表信息:表名、建表时间、总行数、数据大小等




上一篇:Java字符编码根本原理


下一篇:Git.Framework 框架随手记--ORM查询数据集合 二