Когда я изменяю базу данных, как узнать, что нужно удалить и прочитать в конструкторе Oq R LinqToSql в Visual Studio? - PullRequest
3 голосов
/ 05 июня 2009

Например, я изменяю столбец в таблице, чтобы он не был нулевым от нуля.

Затем мне нужно удалить и прочитать таблицу. Эта часть довольно ясна.

А как насчет представлений, функций и хранимых процедур, которые обращаются к таблице, особенно к этому столбцу в таблице?

Я пытался запустить diff для файлов, сгенерированных SQLMetal, с некоторым ограниченным успехом, но даже при этом это довольно неясно.

Я знаю, что есть по крайней мере один коммерческий инструмент, который претендует на решение этой проблемы, но я ищу что-то бесплатное.

Как люди решают эту проблему?

Ответы [ 2 ]

0 голосов
/ 21 ноября 2009

Кажется, вы вкладываете много бизнес-логики в свою базу данных SQL, а не храните ее в самом приложении. Попробуйте применить более DDD подход с Доменом Модель - это должно переместить большую часть работы, которую выполняют SP и виды из БД делать обратно в приложение, где они принадлежат. Тогда ваша база данных должна быть предназначена только для постоянных данных, и, следовательно, для изменения таблиц требуется лишь очень небольшое количество времени в конструкторе L2S для выполнения обновлений.

0 голосов
/ 20 сентября 2009

+ 1 по вопросу.

Но что плохого в использовании коммерческого инструмента, если он решает проблему? В конце концов, если вы тратите час в неделю на сопоставление изменений вручную, а не на нажатие кнопки, которая делает все за вас, тогда стоимость лицензии на использование коммерческого инструмента окупится в кратчайшие сроки. Все инструменты, которые решают эту проблему стоят часть лицензии Visual Studio, имеют бесплатные пробные версии, и цена для большинства разработчиков составляет не более часа. Просто мои 2 цента.

Тем не менее, я согласен, было бы замечательно, если бы эта функция была доступна бесплатно. Я пытался предложить это MSFT много раз, но они, кажется, не заинтересованы в этом. (как в: они даже не отвечают ... :))

...