Вы рядом.Вы можете посмотреть на sys.columns
, чтобы получить столбцы.
Вы можете отфильтровать таблицу с помощью OBJECT_ID=OBJECT_ID('dbo.Foo')
.
. Вы можете получить длину от sys.columns
.Тип данных находится в поле system_type
.Ключи для этого поля находятся в sys.types
.
. В целом вы можете сделать:
select object_NAME(c.object_id), c.name, t.name, c.max_length
from sys.columns c
INNER JOIN sys.types t
ON t.system_type_id = c.system_type_id
В качестве примечания, в SQL Server системные таблицы устарели (т.е. syscolumns
, sysobjects
) и рекомендуется использовать вместо них представления sys.columns
, sys.objects
и т. Д.
Это даст вам таблицу, столбец, тип данных и максимальную длину для каждогоодин.