Имеет ли смысл иметь атрибут первичного ключа в Core Data в iOS 9?
В iOS 9
Я могу указать определенные атрибуты в сущности unique constraints
предотвратить создание управляемых объектов с такими же уникальными ограничениями.
каждый NSManagedObject
имеет свой ObjectId
но поддерживается внутренне Core Data
и не может быть установлен как уникальное ограничение в модели.
Исходя из этого, имеет ли смысл включать "primary key
"атрибут для всех сущностей в основных данных и указать первичный ключ как уникальное ограничение, если я не хочу дублировать данные?
1 ответ
Если у вас есть осмысленный способ найти и заполнить этот ключ, и устранение дубликатов что-то значит для вас, тогда да.
Если у вас нет источника значащего значения для ключа, например, значения, сгенерированного сервером, то все, что вы делаете, - это добавляете требование, что вам сначала нужно найти ключ, и вы все равно это сделаете, чтобы избегать дублирования Поэтому добавление без внешней поддержки обычно не поможет.