Моей основной причиной этого является отслеживание изменений схемы базы данных для моего приложения. В SQL Server Management Studio я могу создать сценарий создания, который создает базу данных, но не содержит никаких тестовых данных. В идеале, когда сценарий запускается, он должен УДАЛИТЬ существующую базу данных (при условии, что она уже существует), а затем воссоздать ее, используя этот новый сценарий, содержащий изменения схемы и тестовые данные с моей машины для разработки.
Итак, как я могу сгенерировать скрипт, который создаст базу данных со всеми таблицами, сохраненными процессами, триггерами, представлениями, тестовыми данными и т. д.?
Я пытался использовать функцию импорта/экспорта, но это бесполезно, потому что похоже, что она не копирует хранимые процедуры. Кроме того, было бы неплохо иметь скрипт, чтобы я мог отслеживать изменения в схеме с помощью mercurial.
Я использую SQL Server Express 2008 R2 вместе с SQL Server Management Studio.