【iOS开发】数据存储的四种方式

来源:互联网 发布:上海天正软件 面试 编辑:程序博客网 时间:2024/05/03 18:20
     在iOS操作系统中,数据持久化一般有四种方式。分别是:属性列表、文件归档、SQLite数据库和CoreData。四种方法各有利弊,都有相应的使用场合。

1.简单对比

属性列表:只能存储数组和字典,并且其中不能包含自定义对象,一般存储少量数据

文件归档:可以存储自定义对象,需要实现NSCoding协议。但是只能做一次性读取和存储操作。

SQLite:大批量存储数据,局部的读取,进行增删改查,不用把数据一次性读进内存。

CoreData: CoreData提供对象-关系映射ORM(Object Relationships Mapping)解决方案,能直接生成对应的model对象文件,并且封装了一些底层操作,简化了使用,减少代码量,一个对象更新时,其关联的对象也会随着更新,相当于你更新一张表的时候,其关联的其他表也会随着更新。而sqlite要使用c调用对应的api,且model对象文件要自己写过,代码量会稍大一些。

2.用法

SQLite的基本操作语句:

创建表:CREATE TABLE Teacher (name text,sex text,age integer)
增删改查:

INSERT INTO Students (name,age)VALUES ('lilei', 22)DELETE FROM Students WHERE name = 'lilei'UPDATE Students SET age = 20 WHERE name = 'lilei'SELECT * FROM Students WHERE name =  'lilei';

当我们的数据库表关联比较复杂,三四张表都关联用SQLite,如果数据表结构简单,就只有两三张,这些表没有关联关系,用CoreData

CoreData的基本操作:

1.创建模型文件 相当于数据库
2.添加实体 相当表
3.创建实体类 相于模型类
4.生成上下文 关联模型文件生成数据库
5.保存对象到数据库
6.从数据库获取对象
7.更新数据
8.删除数据
具体使用可参考:http://blog.csdn.net/q199109106q/article/details/8563438/

0 0