https://github.com/project-imas/encrypted-core-data 使用起来很方便,底层还是使用了SQLCipher,有时间要研究一下! 数据库的密码不能用固定字符串,我这里用的是timeInterval函数,生成的当前秒数字符串,并利用 https://github.com/kishikawakatsumi/UICKeyChainStore 保存到keychain,确保安全.…
1.CoreData 数据库 CoreData 是 iOS SDK 里的一个很强大的框架,允许程序员以面向对象的方式储存和管理数据.使用 CoreData 框架,程序员可以很轻松有效地通过面向对象的接口管理数据.CoreData 框架提供了 对象 - 关系映射 (ORM) 的功能,即能够将 OC 对象转化成数据,保存在 SQLite3 数据库文件中,也能够将保存在数据库中的数据还原成 OC 对象,在数据操作过程中,无需编写任何 SQL 语句. 模型文件及实体(Entity).要使用 CodeDa…
在coredata 数据库结构被更改后,没根据要求立即建立新version,而是在原version上进行了小修改,之后才想起来建立新版本.并通过以下代码合并数据库, NSError *error = nil; NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,…
CoreData数据库虽然可以和tableview或者UITableViewController一起使用将数据显示在表格上,但是在准备数据的时候,这种方式需要用一个可变数组来装从数据库一次性取出来的所有数据,然后通过操作这个数组来显示数据再表格上,从内存的优化和性能上来说并不是很好:这里,介绍一种新的抓取数据的方式,苹果公司为了进一步优化内存,创建了一个从数据库抓取数据的控制器NSFetchedResultsController,它能从CoreData中一批一批的抓取数据并存放起来,然后通过操作…
CoreData数据库是用来持久性存储数据的,那么,我们再从该数据库中取出数据干什么呢?明显的是为了对数据做操作,这个过程中可以将它们直观的显示出来,即通过表格的形式显示出来.CoreData配合tableView一起使用,是很常用的一种方式,直观.清晰明了. 下面就来具体的举个例子: 要求:将数据库中的数据显示在表格中,并且可以进行删除.插入等一些操作. 前期的具体步骤: 1.创建项目时,勾选Use Core Data,生成CoreData_____.xcdatamodel文件: 2.点击Co…
CoreData数据库框架:mac系统自带的数据库,它是苹果公司对sqlite进行封装而来的,既提供了对数据库的主要操作,也提供了具体的视图关系模型. 需要用到三个对象: 1•Managed Object Model(被管理对象模型):          数据库的轮廓,或者结构.包含了各个实体的定义信息 2•Persistent Store Coordinator (持久性数据协调器):         数据库连接库,在这里设置数据存储的名字和位置,以及数据存储的时机 3•Managed Obj…
1. SQLite数据库 sqlite数据库操作的基本流程是, 创建数据库, 再通过定义一些字段来定义表格结构, 可以利用sql语句向表格中插入记录, 删除记录, 修改记录, 表格之间也可以建立联系. 这些操作都需要使用SQL语句去实现,感觉操作很直接.如果先前有一点数据库和SQL基础的话,写起来会感觉很亲切,都是一些数据库操作的语句.但是当操作变多之后,语句越来越多,就很烦,代码比较多,看起来也会混乱一些. 如果想要详细了解,可以看iOS学习36数据处理之SQLite数据库 2. CoreDa…
前言:最近ChinaDaily项目需要迭代一个新版本,在这个版本中CoreData数据库模型上有新增表.实体字段的增加,那么在用户覆盖安装程序时就必须要进行CoreData数据库的版本升级和旧数据迁移,如果仅仅是在旧版本的数据模型上进行上述操作,就会造成所有旧用户更新完成后的第一次启动崩溃. 数据迁移的方式有好几种,这里就先介绍我用的轻量级的数据迁移方式:Core Data轻量级迁移是适用于添加新表,添加新的实体,添加新的实体属性,等简单的,系统能自己推断出来的迁移方式.接下来在我之前写的 iO…
CoreData数据库框架是一个封装性好,功能强大数据库,它底层使用的还是sqlite数据库,不过苹果公司在其基础上,为其封装新和安全性的维护上做了大量的处理,例如对一些事物做了详细的操作,如读脏数据.提交回滚等,使得CoreData的安全性很可靠. 用数据库存储数据时,有时候不只是创建一个表,在创建多个表格并且两者之间有对应关系时,使用CoreData数据库框架能够很轻松的解决这些问题,效率极高.光说还是不能当真,下面我就来使用这个数据库存储两个有各自的属性数据并且有对应关系的表吧. 要求:创…
    一  CoreData 了解 1 CoreData 数据持久化框架是 Cocoa API 的一部分,首先在iOSS5 版本的系统中出现:      它允许按照 实体-属性-值 模式组织数据:      并以 XML . 二进制文件.内存.自定义数据类型或者 SQLite 数据文件的格式持久化数据 2 CoreData 主要提供对象-关系映射(ORM)功能,把OC对象转化为数据保存到文件,也可以数据转化为OC对象 3 原理 : 是对 SQLite 的封装,开发者不需要接触SQL 语句,就可…