Имеет ли смысл иметь атрибут первичного ключа в Core Data в iOS 9?

В iOS 9Я могу указать определенные атрибуты в сущности unique constraints предотвратить создание управляемых объектов с такими же уникальными ограничениями.

каждый NSManagedObject имеет свой ObjectId но поддерживается внутренне Core Data и не может быть установлен как уникальное ограничение в модели.

Исходя из этого, имеет ли смысл включать "primary key"атрибут для всех сущностей в основных данных и указать первичный ключ как уникальное ограничение, если я не хочу дублировать данные?

1 ответ

Если у вас есть осмысленный способ найти и заполнить этот ключ, и устранение дубликатов что-то значит для вас, тогда да.

Если у вас нет источника значащего значения для ключа, например, значения, сгенерированного сервером, то все, что вы делаете, - это добавляете требование, что вам сначала нужно найти ключ, и вы все равно это сделаете, чтобы избегать дублирования Поэтому добавление без внешней поддержки обычно не поможет.

Другие вопросы по тегам