Можно ли добавить описание/комментарий в таблицу в Microsoft SQL 2000+
Можно ли добавить описание или комментарии в метаданные в таблицу в Microsoft SQL 2000 и выше?
Как вы это сделаете с помощью инструкции CREATE TABLE?
Можно ли добавить описание или комментарий к полям?
Как вы запрашиваете эту информацию в MSSQL 2000? 2005?
Ответы
Ответ 1
Используйте расширенные свойства. Например, чтобы добавить расширенное свойство в таблицу в схеме dbo, вы можете использовать:
EXEC sys.sp_addextendedproperty @name=N'<NameOfProp>',
@value=N'<Value>' , @level0type=N'SCHEMA',@level0name=N'dbo',
@level1type=N'TABLE',@level1name=N'<Table>'
Вы можете обновить их:
EXEC sys.sp_updateextendedproperty
@name=N'MS_Description', @value=N'My Description' ,
@level0type=N'SCHEMA',@level0name=N'dbo',
@level1type=N'TABLE'
,@level1name=N'<YOUR TABLE NAME>'
Вы можете прочитать их как:
SELECT *
FROM fn_listextendedproperty (NULL, 'schema','dbo', 'table', '<yourtable>', default, default);
или
SELECT
p.name AS [Name],p.value
FROM
sys.tables AS tbl
INNER JOIN sys.extended_properties AS p ON p.major_id=tbl.object_id AND p.minor_id=0 AND p.class=1
WHERE
(tbl.name=N'<yourtablename>' and SCHEMA_NAME(tbl.schema_id)=N'dbo')
ORDER BY
[Name] ASC
Ответ 2
Конечно, вы можете использовать упомянутый выше SP, но есть более простой способ сделать это, и я считаю, что MGT Studio должен быть вашим первым выбором для внесения этих изменений, если вы не пытаетесь автоматизировать все, используя script. Вот как это сделать:
![введите описание изображения здесь]()
1- Щелкните правой кнопкой мыши по таблице
2- Нажмите "Дизайн"
3- Комментарий, как показано выше
Просто чтобы у вас был полный ответ, здесь проще script изменить его (более простое сравнение с приведенными выше ответами):
DECLARE @v sql_variant
SET @v = N'Comment here'
EXECUTE sp_addextendedproperty N'MS_Description', @v, N'SCHEMA', N'dbo', N'TABLE', N'Stack_testing', N'COLUMN', N'testinghere'
Ответ 3
Большинство инструментов и людей используют расширенные свойства для поддержки этого. Общее имя, используемое SSMS, - MS_Description
Существует несколько встроенных хранимых процедур для создания этих свойств, а также их чтение, они меняются с течением времени, поэтому будут различия между версиями SQL.
Ответ 4
К сожалению, этот подход не применим к высоконагруженным производственным средам. Хранимые процедуры, управляющие расширенными свойствами, устанавливают исключительную блокировку в целевой таблице. Пока они выполняются, вся таблица нечитаема.