2016-08-10 2 views
1

Я пытаюсь обновить базу данных с помощью EF6 и сначала выполнить первые миграции кода. Миграция A проходит через все этапы, и я отслеживаю, когда она доходит до конца. Но тогда ошибки вне с этим:Сбой первой миграции EF

System.Data.SqlClient.SqlException (0x80131904): Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression. 

миграции B даже не началась, и при взгляде на базу данных, миграция A не было совершено.

Он также влияет только на эту базу данных, так как 99% наших других клиентов мигрировали без проблем. Мы пробовали SQL2008 & 2014 с теми же результатами. Модель db написана на C#, .NET 4.6 и EF6.1.3

+0

Если вы запускаете скрипт миграции, это сработает? Если это так, история миграции может быть повреждена. – stuartd

+1

Пример кода пожалуйста. –

+0

Если это происходит только с одним конкретным db, тогда есть ошибка данных. Некоторое ограничение не выполняется. Невозможно сказать этот вопрос. –

ответ

1

Принимая советы @ stuartd в комментариях, я выводил перенос на сценарий SQL и запускал его на сервере. Это изолирует причину неудачной миграции. Причина, по которой она не вызывала ошибки в точной строке кода, связана с тем, что миграция происходит внутри транзакции.

Смежные вопросы