前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >sqlserver查询数据的所有表名和行数及空间占用量

sqlserver查询数据的所有表名和行数及空间占用量

作者头像
全栈程序员站长
发布2022-07-09 12:10:12
1.3K0
发布2022-07-09 12:10:12
举报
文章被收录于专栏:全栈程序员必看

//查询所有表名 select name from sysobjects where xtype=’u’ –modify_date指表结构最后更新日期,并非数据最后更新日期 SELECT name, object_id, principal_id, schema_id, parent_object_id, type, type_desc, create_date, modify_date, is_ms_shipped, is_published, is_schema_published, lob_data_space_id, filestream_data_space_id, max_column_id_used, lock_on_bulk_load, uses_ansi_nulls, is_replicated, has_replication_filter, is_merge_published, is_sync_tran_subscribed, has_unchecked_assembly_data, text_in_row_limit, large_value_types_out_of_row FROM sys.tables ORDER BY modify_date DESC

//查询数据库中所有的表名及行数 SELECT a.name, b.rows FROM sys.sysobjects AS a INNER JOIN sys.sysindexes AS b ON a.id = b.id WHERE (b.indid IN (0, 1)) AND (a.type = ‘u’) ORDER BY a.name, b.rows DESC

//查询所有的标明及空间占用量\行数 SELECT OBJECT_NAME(id) AS tablename, 8 * reserved / 1024 AS reserved, RTRIM(8 * dpages) + ‘kb’ AS used, 8 * (reserved – dpages) / 1024 AS unused, 8 * dpages / 1024 – rows / 1024 * minlen / 1024 AS free FROM sys.sysindexes WHERE (indid = 1) ORDER BY tablename, reserved DESC

//查询数据库中的所有数据库名 SELECT Name FROM Master..SysDatabases ORDER BY Name

//查询某个数据库中所有的表名 SELECT Name FROM SysObjects Where XType=’U’ ORDER BY Name

//获取一个数据库中的所有表的名称、一个表中所有字段的名称

SELECT (case when a.colorder=1 then d.name else null end) 表名, a.colorder 字段序号,a.name 字段名, (case when COLUMNPROPERTY( a.id,a.name,’IsIdentity’)=1 then ‘√’else ” end) 标识, (case when (SELECT count(*) FROM sysobjects WHERE (name in (SELECT name FROM sysindexes WHERE (id = a.id) AND (indid in (SELECT indid FROM sysindexkeys WHERE (id = a.id) AND (colid in (SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name))))))) AND (xtype = ‘PK’))>0 then ‘√’ else ” end) 主键,b.name 类型,a.length 占用字节数, COLUMNPROPERTY(a.id,a.name,’PRECISION’) as 长度, isnull(COLUMNPROPERTY(a.id,a.name,’Scale’),0) as 小数位数,(case when a.isnullable=1 then ‘√’else ” end) 允许空, isnull(e.text,”) 默认值,isnull(g.[value], ‘ ‘) AS [说明] FROM syscolumns a left join systypes b on a.xtype=b.xusertype inner join sysobjects d on a.id=d.id and d.xtype=’U’ and d.name<>’dtproperties’ left join syscomments e on a.cdefault=e.id left join sys.extended_properties g on a.id=g.major_id AND a.colid=g.minor_id left join sys.extended_properties f on d.id=f.class and f.minor_id=0 where b.name is not null –WHERE d.name=’要查询的表’ –如果只查询指定表,加上此条件 order by a.id,a.colorder

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/119288.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年11月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档