如何获取 SQL Server 中的表结构?
Posted
技术标签:
【中文标题】如何获取 SQL Server 中的表结构?【英文标题】:How to get the table structure in SQL Server? 【发布时间】:2016-07-25 09:52:23 【问题描述】:我的任务是获取 SQL Server 中的表结构(这意味着所有列及其数据类型和约束是什么)
【问题讨论】:
运行sp_help tablename
?
谢谢詹姆斯,您的查询对我有用。
【参考方案1】:
这将列出所有列、它们所属的架构和表、它们的数据类型、最大长度、精度和比例(对于数字类型) - 您还需要什么??
SELECT
SchemaName = sch.name,
TableName = t.Name,
ColumnName = c.Name,
TypeName = ty.Name,
MaxLength = c.max_length,
Precision = c.precision,
Scale = c.scale
FROM
sys.columns c
INNER JOIN
sys.tables t ON t.object_id = c.object_id
INNER JOIN
sys.schemas sch ON sch.schema_id = t.schema_id
INNER JOIN
sys.types ty ON c.user_type_id = ty.user_type_id
【讨论】:
【参考方案2】:sp_help 可用于获取有关表的所有详细信息。 你可以做这样的事情 -
执行 sp_help yourtableName
【讨论】:
它也可以工作,我可以知道'exec sp_help'[M3FDBTST].[MVXJDTA].[CMNCMP]'之间的区别;'和“sp_help 表名?”;以上是关于如何获取 SQL Server 中的表结构?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 sql server 2008 中获取没有约束的表列?
如何在 SQL Server 中使用存储过程提高和加快获取数据的速度?
如何从 SQL Server 中特定数据库的表中获取所有列名?