Database project и Schema update script, что я делаю не так?
От: Mr.Delphist  
Дата: 27.10.10 19:31
Оценка:
В общем, упала на голову задача: есть ASP.NET проект, надо автоматизировать накатывание изменений в структуре базы (на тестовый сервак, на продакшн и т.п.). Погуглил на тему, остановился на Database Project из состава Visual Studio, вот неплохой подкаст на тему: http://channel9.msdn.com/posts/wriju/Visua...se-Development/

Но на практике тут же начались грабли. Получается, что этот подход автоматизирует работу со структурой базы, но не её с данными. Скажем, при переименовании колонки (через Refactor, а не руками), Студия рисует вот такой дуболомный upgrade-скрипт:


...
GO
ALTER TABLE [dbo].[Dummy2] DROP COLUMN [column_2];
 
GO
ALTER TABLE [dbo].[Dummy2]
   ADD [column_dummy] INT NULL;
...


Понятно, что если на целевой базе были какие-то данные, то этот скрипт при накатывании тупо их потрёт. Хотелось бы
1) не рисовать подобные скрипты руками
2) не терять данные

Нетривиальные изменения структуры всё равно потребуют ручных скриптов, это ясно, но почему такая элементарщина лажает? Что я делаю не так?
database project upgrade script
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.