惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog
S
SegmentFault 最新的问题
WordPress大学
WordPress大学
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
MyScale Blog
MyScale Blog
A
About on SuperTechFans
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
The Blog of Author Tim Ferriss
MongoDB | Blog
MongoDB | Blog
博客园 - 【当耐特】
The Cloudflare Blog
F
Fortinet All Blogs
小众软件
小众软件
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
罗磊的独立博客
量子位
有赞技术团队
有赞技术团队
V
V2EX
Engineering at Meta
Engineering at Meta

博客园 - TanSea

VMware虚拟机下Linux系统(Ubuntu桌面版)微服务环境搭建 - 构建篇 VMware虚拟机下Linux系统(Ubuntu桌面版)微服务环境搭建 - Gogs篇 VMware虚拟机下Linux系统(Ubuntu桌面版)微服务环境搭建 - Docker篇 VMware虚拟机下Linux系统(Ubuntu桌面版)微服务环境搭建 - Jenkins篇 VMware虚拟机下Linux系统(Ubuntu桌面版)微服务环境搭建 - 准备篇 Sql Server 分批复制数据 MAUI Blazor+MASA开发安卓应用学习笔记 - 设置图标和初始屏幕 MAUI Blazor+MASA开发安卓应用学习笔记 - 设置APP格式、名称、版本信息 MAUI Blazor+MASA开发安卓应用学习笔记 - 新建项目和发布 一道SQL面试题的解题思路 Windows10设置默认简体美式键盘输入法 C# 历史版本特性变更(更新到C# 11) SQL Server Report Builder RDLC按记录数分页 一次Exchange邮箱接口的开发经历 SQL Server分页查询进化史 一次.NET项目反编译的实战经验(WinForm) 点石成金-访客至上的网站设计秘笈 读书笔记 Windows7使用无线网卡建立WiFi热点 程序员的职业素养 读书笔记 - 第14章 辅导、学徒期与技艺
Sql Server 查询数据库表结构
TanSea · 2024-03-12 · via 博客园 - TanSea

记录一下,感觉之后有可能会用得上

SELECT
    CASE WHEN sc.column_id=1 THEN so.name ELSE '' END 表名,
    CASE WHEN sc.column_id=1 THEN ISNULL(pt.value,'') ELSE '' END 表说明,
    sc.column_id 字段序号,
    sc.name 字段名,
    ISNULL(pc.value,'') 字段说明,
    CASE WHEN COLUMNPROPERTY(sc.object_id, sc.name, 'IsIdentity')=1 THEN '' ELSE '' END 标识,
    CASE WHEN EXISTS (SELECT 1 FROM sys.objects WHERE type='PK' AND parent_object_id=sc.object_id AND EXISTS (
        SELECT name FROM sys.indexes WHERE EXISTS (SELECT index_id FROM sys.index_columns WHERE object_id=sc.object_id AND column_id=sc.column_id))
    ) THEN '' ELSE '' END 主键,
    st.name 类型,
    sc.max_length 占用字节数,
    COLUMNPROPERTY(sc.object_id, sc.name, 'Precision') 长度,
    ISNULL(COLUMNPROPERTY(sc.object_id, sc.name, 'Scale'), 0) 小数位数,
    CASE WHEN sc.is_nullable=1 THEN '' ELSE '' END 允许空,
    ISNULL(sd.definition,'') 默认值
FROM sys.columns sc
LEFT JOIN sys.types st ON sc.system_type_id=st.system_type_id AND st.name<>'sysname'
INNER JOIN sys.objects so ON sc.object_id=so.object_id AND so.type='U'
LEFT JOIN sys.default_constraints sd ON sc.default_object_id=sd.object_id
LEFT JOIN sys.extended_properties pc ON sc.object_id=pc.major_id AND sc.column_id=pc.minor_id
LEFT JOIN sys.extended_properties pt ON so.object_id=pt.major_id AND pt.minor_id=0
ORDER BY sc.object_id, sc.column_id