Моя старая модель ManagedObject выглядит следующим образом, с ограничениями : [trackURL
]
@objc(TrackDownloadInfo)
public class TrackDownloadInfo: NSManagedObject {
@NSManaged public var trackURL: String
@NSManaged public var downloadState: Int16
@NSManaged public var id: Int64
@NSManaged public var type: Int16
}
Я только что изменил ограничения: [id
, type
] без какой-либо версии модели, это вызывает ошибку миграции:
Ошибка домена = NSCocoaErrorDomain Code = 134110 «Произошла ошибка во время постоянной миграции хранилища». UserInfo = {sourceURL = file: ///var/mobile/Containers/Data/Application/FA440C2E-63EF-4533-94EB-4EA721A645A9/Library/Application%20Support/MyApp.sqlite, reason = Невозможно перенести хранилище на месте: ограничение Нарушение во время попытки миграции Code = 134111 "(null)" UserInfo = {_ NSCoreDataOptimisticLockingFailureConflictsKey = (""), NSUnderlyingException = нарушение ограничения, причина = нарушение ограничения во время попытки миграции, NSExceptionOmitCallstacks = true}}}, ["ошибка NSUnderlyingError = ошибка NSN") "(null)" UserInfo = {_ NSCoreDataOptimisticLockingFailureConflictsKey = (""), NSUnderlyingException = нарушение ограничения, причина = ограничение v
Я знаю, что это связано с тем, что в таблице присутствуют повторяющиеся записи с одинаковыми id
и type
, но trackURL
отличается.
Я хочу удалить обе записи, чтобы перенести их. У меня не было никакого способа сделать это.