1

Я намерен использовать расширенные свойства для документации. Итак, чтобы сохранить описания и комментарии к таблицам, представлениям и т. Д. Вот так:Использовать расширенные свойства для целей документации?

EXECUTE sp_addextendedproperty 
    @name = N'MS_Description', 
    @value = N'custom description text', 
    @level0type = N'SCHEMA', @level0name = N'SchemaName', 
    @level1type = N'VIEW', @level1name = N'ViewName'; 

Мне просто интересно, хорошая ли это. Используется ли этот подход, и информация останется в базе данных?

До сих пор я обнаружил, что информация остается на ALTER VIEW, но она удалена на DROP VIEW. Ничего страшного. Но есть ли другая возможность, что информация может быть удалена?

+0

'sp_dropextendedproperty'? – Devart

+0

@Devart да, ну, ок;) - Я имею в виду, возможно ли, что сервер почему-то «очищает» некоторые свойства по какой-то причине? Я знаю, что свойства хранятся в самой базе данных в 'sys.sysxprops'. Я просто хочу быть уверенным, что они останутся там. –

ответ

2

Да, это общий подход. Да, он останется в базе данных. Единственная реальная проблема, с которой я столкнулся, - это когда люди создают сценарии развертывания или обновляют среду и не выполняют сценарий расширенных свойств. Скажем, например, если ваши сценарии развертывания решают сбросить и воссоздать хранимые процедуры каждого развертывания. Большинство инструментов генерации сценариев поддерживают скрипты расширенных свойств, но некоторые из них отключили по умолчанию. http://www.csvreader.com/posts/data_dictionary.php

+0

Спасибо, это приятно услышать, действительно успокоить меня. Да, конечно, свойства должны быть написаны при перемещении/развертывании. Но тогда расширенные свойства открывают много хороших возможностей для автоматической документации. Также спасибо за ссылку, этот csvreader выглядит как интересный инструмент! –

Смежные вопросы