Стратегия обновления схемы SQL Azure

В настоящее время я работаю над приложением asp.mvc с инфраструктурой сущностей в качестве бэкэнда базы данных, которое будет работать на платформе MS Azure.

на моей машине разработки я запускаю экземпляр sqlexpress, в котором размещается моя база данных разработки (как я уже сказал, приложение может подключаться к ней через структуру объектов).

развертывание схемы базы данных из моего локального sqlexpress в sql azure довольно просто с помощью мастера создания базы данных Entity Framework (по каким-то причинам мастер всегда хочет создать некоторые кластеризованные индексы, которые я исправляю вручную в сгенерированном файле sql).

но я не могу найти способ сохранить свои данные! автоматически сгенерированный сценарий sql всегда сбрасывает все мои таблицы и создает новые ... это нормально для начальной настройки, но не для обновления существующей базы данных.

должен быть хороший способ выполнить обновление схемы без потери данных... пожалуйста, помогите! я уже пробовал студию управления sql (r2) и SQLAzureMW (доступно на codeplex)... но они не работают :(

пожалуйста, не говорите мне, что для этого мне нужно написать свой собственный инструмент!

ищу твоей помощи

Спасибо

Изменить: вот как я это делаю сейчас

Я использую сценарии SQL, созданные мастером миграции EF, для своего локального SQL Express и сам модифицирую их, чтобы они были совместимы с SQL Azure. Меньше работы, чем можно подумать, и работает отлично :)


person Matthias    schedule 12.11.2010    source источник


Ответы (3)


Вы пытались использовать BCP для экспорта, а затем импортировать свои данные? Я считаю, что вы должны иметь возможность использовать BCP для экспорта данных из вашего экземпляра SQL Express в файл, а затем импортировать данные из файла в SQL Azure. Команда SQL Azure опубликовала запись в блоге, в которой описывается использование BCP с SQL Azure — http://blogs.msdn.com/b/sqlazure/archive/2010/05/21/10014019.aspx.

Кроме того, в будущем вам может помочь предстоящий выпуск SQL Azure Data Sync CTP2.

Из любопытства, какие у вас проблемы с SQLAzureMW?

person mcollier    schedule 12.11.2010

RedGate славится синхронизацией SQL-сервера и синхронизацией данных в целях развертывания.

У них есть бета-версия v9 продуктов DataCompare и SchemaCompare, совместимых с SQL Azure. Я успешно использую оба и они мне очень нравятся.

Они дорогие при покупке, если вы малый бизнес.

http://www.red-gate.com/Azure

person Igorek    schedule 12.11.2010

Эти звуки отличаются от этот вопрос, единственный ответ на который "подождите для следующей версии Entity Framework». Я признаю, что не использую EF, но я вношу изменения в таблицы по старой схеме с помощью SQL Server Management Studio и сценариев. ALTER TABLE ФТВ.

EDIT: Если у вас нет доступа к SQL Server Management Studio, новая версия портала SQL Azure включает приложение на основе Silverlight, которое позволяет выполнять запросы и сценарии.

person knightpfhor    schedule 12.11.2010
comment
Если у вас есть SQL Server 2008 R2, вы можете использовать студию администратора в этом выпуске для прямого монтирования баз данных SQL AZURE. - person MikeJ; 20.07.2011