gpt4 book ai didi

tsql - 查询数据长度的列定义 - SQL Server

转载 作者:行者123 更新时间:2023-12-04 08:31:17 24 4
gpt4 key购买 nike

我希望为数据库生成所有表、列和数据类型的列表。
这个查询会给我除数据类型长度之外的所有信息:

SELECT t.name AS TableName,
c.name AS ColumnName,
y.name AS DataType
FROM sys.tables AS t
JOIN sys.columns AS c ON t.object_id = c.object_id
JOIN sys.types AS y ON y.user_type_id = c.user_type_id
WHERE t.name = 'Tablename';
但是对于数据类型为 varchar 的列或 nvarchar ,我还想查看每个的最大限制。
例如,如果 ColumnA 是 varchar(100) - 我在哪里可以找到数据库中的 100 限制?到目前为止,我找不到该信息的存储位置。
谢谢,

最佳答案

sys.columns有一个名为 max_length 的属性:

SELECT 
t.name AS TableName,
c.name AS ColumnName,
c.max_length,
y.name AS DataType
FROM
sys.tables AS t
JOIN
sys.columns AS c ON t.object_id = c.object_id
JOIN
sys.types AS y ON y.user_type_id = c.user_type_id
WHERE
t.name = 'Tablename';
official MS documentation on sys.columns 更多细节

关于tsql - 查询数据长度的列定义 - SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65011471/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com