Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 338463
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T10:25:54+00:00 2026-05-12T10:25:54+00:00

The CoreData documentation says You can sometimes benefit from creating your own unique ID

  • 0

The CoreData documentation says “You can sometimes benefit from creating your own unique ID (UUID) property which can be defined and set for newly inserted objects. This allows you to efficiently locate specific objects using predicates (though before a save operation new objects can be found only in their original context).”

What should be used for this type?

A managed object’s objectID is usually ‘NSManagedObjectID’ type but the DataModel wizard tool via XCode that allows you to set the type for a given attribute only has the basic allowed types in addition to ‘Undefined’, Binary Data, & Transformable.

If I wanted to have an attribute that serves as a secondary id for an object (in addition to it’s standard ObjectID), do you store it as an NSString or would you custom modify the object model to hold NSManagedObjectID?

(for iPhone app/CoreData development)

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T10:25:55+00:00Added an answer on May 12, 2026 at 10:25 am

    An NSString or integer attribute are logical choices, though you could use a transformable attribute to store anything you wanted (that could be appropriately serialized, of course). An incrementing integer is probably good enough for many uses, but each use case is different. Many algorithms exist on the net for generating string or byte-array UUIDs (start with Google). An NSString UUID is quite easy:

    +(NSString*)UUIDString {
        CFUUIDRef theUUID = CFUUIDCreate(NULL);
        CFStringRef string = CFUUIDCreateString(NULL, theUUID);
        CFRelease(theUUID);
        return [NSMakeCollectable(string) autorelease];
    }
    

    for an array of bytes, look at CFUUIDGetUUIDBytes().

    Before you go this route, think long and hard about whether it is necessary. Folks coming from a SQL point of view “want” their ids, but Core Data is not about relational databases. It’s an object graph management framework that just happens to use SQLite as one backing implementation. If you’re trying to do SQL-like things in Core Data, you’re going to be fighting the framework. There’s often a way around needing a separate id property in proper usage of the Core Data framework.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

The documentation says, that core data properties can only store NSString, NSNumber and NSDate
I need your help, I'm learning the coreData migration and I can't access to
My sense from the Address Book documentation and my understanding of the underlying CoreData
I've looked through all the class documentation for Core Data and I can't find
I have CoreData in my app, with an Entry class, which contains an NSOrderedSet
The documentation on Core Data entities says: You might implement a custom class, for
I'm syncing a core-data app with iCloud and none of the documentation says in
According to Apple documentation on debugging Core Data it says we should be able
I opened the core data book example directly from Xcode's documentation window. The project
I can't seem to find any information in the documentation or via Google on

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.