How to get list of existing entities(tables) in co

2019-04-22 19:39发布

How to get list of existing entities(tables) for a particular schema(Managed object model) in core data. I just started implementing core data concept and stuck with these points, please help

something like : SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = 'dbName';

Thanks

1条回答
Rolldiameter
2楼-- · 2019-04-22 19:55

You should read through Apple's Core Data Programming Guide. To get the entities for a particular NSManagedObjectModel, you would use one of the following (this assumes you have an NSManagedObjectModel named objectModel):

NSArray *myEntities = [objectModel entities];
// Array of all entities in the model

or

NSDictionary *myEntities = [objectModel entitiesByName];
// Dictionary of entities in the model, with the entity names as keys

You can read more in the NSManagedObjectModel Class Reference.

It appears you're coming from a SQL background (as I was). There are a number of concepts in Core Data that are different - sometimes for the better, once you understand them, sometimes requiring more work than a simple SQL statement you may be used to. I think it's important to approach Core Data without SQL "baggage" and treat it as if you're learning how to use a database for the first time - this will help avoid frustration.

查看更多
登录 后发表回答