Sql Server generate table structure document

Posted 天藐水瓶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server generate table structure document相关的知识,希望对你有一定的参考价值。

SELECT
表名 = Case
When A.colorder = 1 Then D.name
Else ‘‘
End,
表说明 = Case
When A.colorder = 1 Then isnull(F.value, ‘‘)
Else ‘‘
End,
字段序号 = A.colorder,
字段名 = A.name,
字段说明 = isnull(G.[value], ‘‘),
标识 = Case
When COLUMNPROPERTY(A.id, A.name, ‘IsIdentity‘) = 1 Then ‘√‘
Else ‘‘
End,
主键 = Case
When exists(
SELECT
1
FROM
sysobjects
Where
xtype = ‘PK‘
and parent_obj = A.id
and name in (
SELECT
name
FROM
sysindexes
WHERE
indid in(
SELECT
indid
FROM
sysindexkeys
WHERE
id = A.id
AND colid = A.colid
)
)
) then ‘√‘
else ‘‘
end,
类型 = B.name,
占用字节数 = A.Length,
长度 = COLUMNPROPERTY(A.id, A.name, ‘PRECISION‘),
小数位数 = isnull(COLUMNPROPERTY(A.id, A.name, ‘Scale‘), 0),
允许空 = Case
When A.isnullable = 1 Then ‘√‘
Else ‘‘
End,
默认值 = isnull(E.Text, ‘‘)
FROM
syscolumns A
Left Join systypes B On A.xusertype = 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.major_id
and F.minor_id = 0
where d.name=‘HierarchyHome‘ --如果只查询指定表,加上此条件
Order By
A.id,
A.colorder

以上是关于Sql Server generate table structure document的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis Generator for SQL Server

NHibernate HQL Generator支持SQL Server 2016时态表

MyBatis Generator 配置文件详解 之 table 元素

sql sql_server_table_size.sql

Generating sql insert into for Oracle

SQL Server ->> 深入探讨SQL Server 2016新特性之 --- Temporal Table(历史表)