sql server 查看字段备注等信息

2024-04-04 05:32

本文主要是介绍sql server 查看字段备注等信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



SELECT     d.name AS 英文表名, ISNULL(h.value, N'') AS 中文表名, 
a.colorder AS 字段序号, a.name AS 英文列名, ISNULL(g.value, N'') 
                      AS 中文列名, CASE WHEN COLUMNPROPERTY(a.id, a.name, 'IsIdentity') = 1 THEN '√' ELSE '' END AS 标识列, 
                      CASE WHEN a.isnullable = 1 THEN '√' ELSE '' END AS 允许空, CASE WHEN COLUMNPROPERTY(a.id, a.name, 'IsComputed') = 1 THEN '√' ELSE '' END AS 计算列, 
                      CASE WHEN EXISTS
                          (SELECT     1
                            FROM          dbo.sysindexes si(readpast) INNER JOIN
                                                   dbo.sysindexkeys sik(readpast) ON si.id = sik.id AND si.indid = sik.indid INNER JOIN
                                                   dbo.syscolumns sc(readpast) ON sc.id = sik.id AND sc.colid = sik.colid INNER JOIN
                                                   dbo.sysobjects so(readpast) ON so.name = si.name AND so.xtype = 'PK'
                            WHERE      sc.id = a.id AND sc.colid = a.colid) THEN '√' ELSE '' END AS 主键, ISNULL
                          ((SELECT     TOP (1) definition
                              FROM         sys.check_constraints WITH (readpast)
                              WHERE     (parent_object_id = d.id) AND (parent_column_id = a.colid)), N'') AS Check约束, ISNULL(e.text, N'') AS 默认值, ISNULL
                          ((SELECT     TOP (1) cx.name
                              FROM         sys.syscolumns AS ax WITH (readpast) INNER JOIN
                                                    sys.sysobjects AS bx WITH (readpast) ON ax.id = bx.id INNER JOIN
                                                    sys.sysobjects AS cx WITH (readpast) ON ax.domain = cx.id
                              WHERE     (d.id = bx.id) AND (a.colid = ax.colid)), N'') AS 绑定规则, ISNULL
                          ((SELECT     TOP (1) ee.name
                              FROM         sys.foreign_key_columns AS aa WITH (readpast) INNER JOIN
                                                    sys.syscolumns AS bb WITH (readpast) ON aa.parent_column_id = bb.colid INNER JOIN
                                                    sys.sysobjects AS cc WITH (readpast) ON aa.parent_object_id = cc.id AND bb.id = cc.id INNER JOIN
                                                    sys.syscolumns AS dd WITH (readpast) ON aa.referenced_column_id = dd.colid INNER JOIN
                                                    sys.sysobjects AS ee WITH (readpast) ON aa.referenced_object_id = ee.id AND dd.id = ee.id
                              WHERE     (bb.colid = a.colid) AND (cc.id = d.id)), N'') AS 参照表, ISNULL
                          ((SELECT     TOP (1) dd.name
                              FROM         sys.foreign_key_columns AS aa WITH (readpast) INNER JOIN
                                                    sys.syscolumns AS bb WITH (readpast) ON aa.parent_column_id = bb.colid INNER JOIN
                                                    sys.sysobjects AS cc WITH (readpast) ON aa.parent_object_id = cc.id AND bb.id = cc.id INNER JOIN
                                                    sys.syscolumns AS dd WITH (readpast) ON aa.referenced_column_id = dd.colid INNER JOIN
                                                    sys.sysobjects AS ee WITH (readpast) ON aa.referenced_object_id = ee.id AND dd.id = ee.id
                              WHERE     (bb.colid = a.colid) AND (cc.id = d.id)), N'') AS 参照列, b.name AS 类型, a.length AS 长度, COLUMNPROPERTY(a.id, a.name, 'PRECISION') AS 精度, 
                      ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小数位数, d.crdate AS 创建时间, CASE WHEN a.colorder = 1 THEN d .refdate ELSE NULL 
                      END AS 更改时间
FROM         dbo.syscolumns AS a WITH (readpast) LEFT OUTER JOIN
                      dbo.systypes AS b WITH (readpast) ON a.xtype = b.xusertype INNER JOIN
                      dbo.sysobjects AS d WITH (readpast) ON a.id = d.id AND d.xtype = 'U' AND d.name NOT IN ('sysdiagrams') AND d.status >= 0 LEFT OUTER JOIN
                      dbo.syscomments AS e WITH (readpast) ON a.cdefault = e.id LEFT OUTER JOIN
                      sys.extended_properties AS g WITH (readpast) ON a.id = g.major_id AND a.colid = g.minor_id AND g.name = 'MS_Description' LEFT OUTER JOIN
                      sys.extended_properties AS h WITH (readpast) ON a.id = h.major_id AND 0 = h.minor_id AND h.name = 'MS_Description'

这篇关于sql server 查看字段备注等信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874909

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySql死锁怎么排查的方法实现

《MySql死锁怎么排查的方法实现》本文主要介绍了MySql死锁怎么排查的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录前言一、死锁排查方法1. 查看死锁日志方法 1:启用死锁日志输出方法 2:检查 mysql 错误

MySQL数据库函数之JSON_EXTRACT示例代码

《MySQL数据库函数之JSON_EXTRACT示例代码》:本文主要介绍MySQL数据库函数之JSON_EXTRACT的相关资料,JSON_EXTRACT()函数用于从JSON文档中提取值,支持对... 目录前言基本语法路径表达式示例示例 1: 提取简单值示例 2: 提取嵌套值示例 3: 提取数组中的值注意

MySQL修改密码的四种实现方式

《MySQL修改密码的四种实现方式》文章主要介绍了如何使用命令行工具修改MySQL密码,包括使用`setpassword`命令和`mysqladmin`命令,此外,还详细描述了忘记密码时的处理方法,包... 目录mysql修改密码四种方式一、set password命令二、使用mysqladmin三、修改u

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu