
使用NSManagedObjectContext 类的 deleteObject: 方法可以删除已有的记录,此时这个变更还是处于内存里的,需要 save: 一下才会同步到持久化存储中去。
http://www.cnblogs.com/xiaodao/archive/2012/10/09/2716579.html
亮点:
NSManagedObjectContext
被管理数据上下文就像便笺簿
当从数据持久层获取数据时,相当于把这些临时的数据拷贝写在便笺簿上,然后就可以随心所欲的修改这些值。
通过上下文,可以对数据记录NSManagedObject进行添加删除更改,记录更改后支持撤销和重做。
除非你保存这些数据变化,否则持久层的东西是不会变化。
通常我们将 controller 类或其子类与 Managed Object Context NSManagedObjectContext绑定,这样就方便我们动态地生成,获取数据对象等。
常用的方法:
|
-save: |
将数据对象保存到数据文件 |
|
-objectWithID: |
查询指定 Managed Object ID 的数据对象 |
|
-deleteObject: |
将一个数据对象标记为删除,但是要等到 Context 提交更改时才真正删除数据对象 |
|
-undo |
回滚最后一步操作,这是都 undo/redo 的支持 |
|
-lock |
加锁,常用于多线程以及创建事务。同类接口还有:-unlock and -tryLock |
|
-rollback |
还原数据文件内容 |
|
-reset |
清除缓存的 Managed Objects。只应当在添加或删除 Persistent Stores 时使用 |
|
-undoManager |
返回当前 Context 所使用的 NSUndoManager |
|
-assignObject: toPersistantStore: |
由于 Context 可以管理从不同数据文件而来的数据对象, |
|
-executeFetchRequest: error: |
执行获取数据请求,返回所有匹配的数据对象 |
未知美人
HxLauncher: Launch Android applications by voice commands