CoreData

什么是CoreData

Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的。

CoreData的使用步骤

  1. 创建模型文件 相当于数据库
  2. 添加实体 相当表
  3. 创建实体类 相于模型类
  4. 生成上下文 关联模型文件生成数据库
  5. 保存对象到数据库
  6. 从数据库获取对象
  7. 更新数据
  8. 删除数据

1.创建模型文件

所谓的创建模型就是间接生成数据库表

创建模型文件

2.添加实体

2.添加实体

3.创建实体类

以创建员工实体类为例

创建实体类

coreData

继续编辑

4.生成上下文件 关联模型文件生成数据库

 NSManagedObjectContext  _context = [[NSManagedObjectContext alloc] init];

    // 模型文件
    NSManagedObjectModel *model = [NSManagedObjectModel mergedModelFromBundles:nil];

    // 持久化存储调度器
    NSPersistentStoreCoordinator *store = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:model];

    NSString *doc = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    NSLog(@"%@",doc);
    NSString *sqlitePath = [doc stringByAppendingPathComponent:@"company.sqlite"];

    //数据存储的类型 数据库存储路径
    [store addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:[NSURL fileURLWithPath:sqlitePath] options:nil error:nil];


    _context.persistentStoreCoordinator = store;

5.保存对象到数据库

Employee *employee = [NSEntityDescription insertNewObjectForEntityForName:@"Employee" inManagedObjectContext:_context];

    employee.name = @"zhangsan";
    employee.age = @18;
    employee.height = @1.89;

    [_context save:nil];

results matching ""

    No results matching ""