Мы используем EF 5RC, сначала код с миграциями. Я чувствую, что это должен быть простой вопрос для ответа (я надеюсь). Есть ли хороший способ выяснить, что делает автоматическая миграция.Стратегия получения SQL для AutomaticMigrations
Я добавил миграцию с помощью команды добавления миграции. Я вызвал обновление базы данных, и все кажется прекрасным с этой миграцией. Теперь - я просто работаю Update-Database, как я обычно делаю, но со следующей ошибкой:
PM> update-database -Verbose
Using StartUp project 'Web'.
Using NuGet project 'DataAccess'.
Specify the '-Verbose' flag to view the SQL statements being applied to the target database.
Target database is: 'UserGroup' (DataSource: (localdb)\v11.0, Provider: System.Data.SqlClient, Origin: Configuration).
No pending code-based migrations.
Applying automatic migration: 201206301526422_AutomaticMigration.
Automatic migration was not applied because it would result in data loss.
Обратите внимание, я буду добавлять -Verbose варианта, и я попробовал еще раз с - Сценарий. Но я понятия не имею, к чему мы стремимся; и какой SQL - или то, что он думает, приведет к потере данных.
Я не хочу просто включать «разрешить потерю данных» здесь, но пытаюсь понять, как устранить эти миграции.
Спасибо заранее!
Если я даю возможность позволяет потери данных, может он стирает все мои строки? Я добавил атрибут MaxLength в столбец, я знаю, что ни одна из строк в БД фактически не превышает эту длину, если я не против усечения. Таким образом, это означает, что потеря данных означает, или буквально удалит все строки из БД? – Shimmy
@Shimmy не стирает ваши ряды. –
Но это может привести к сокращению или сокращению столбцов –