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

推荐订阅源

Google DeepMind News
Google DeepMind News
Microsoft Security Blog
Microsoft Security Blog
B
Blog
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
爱范儿
爱范儿
博客园_首页
博客园 - 聂微东
量子位
V
Visual Studio Blog
aimingoo的专栏
aimingoo的专栏
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
小众软件
小众软件
大猫的无限游戏
大猫的无限游戏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
Netflix TechBlog - Medium
F
Fortinet All Blogs
The Cloudflare Blog
T
Tailwind CSS Blog
G
Google Developers Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
月光博客
月光博客
腾讯CDC

博客园 - 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