<b>
##IOS开发
- Controller中的
UI层
- Controller中的
Model层
服务层
(去连接Model跟数据库的中间层)数据库层
(Sqlite,XML,JSON)网络服务器层
(包括WebService跟Web数据库,如MySQL或者Oracle)
</b>
##IOS中CoreData VS SQLite
CoreData
<b>
- CoreData说实话是一个对如SQLite这样的嵌入式数据库做面向对象的处理
- CoreData不是一个数据库
- CoreData只是一个操作数据库的核心框架
CoreData术语中借鉴了Sqlite
###SQLite中的外键约束
CREATE
TABLE "t_person"
(name text,age integer,height real,id integer PRIMARY KEY,"book_id" integer REFERENCES
"t_book
"(id)
ON DELETE
CASCADE
)
这段话的解析是:
-
创建一个
t_person
的表(里面有id,name,height这3个基本属性),还有一个book_id
的属性是连接REFERENCES
t_book这个表的(id)
属性,t_book中id对应删除
选项是CASCADE
-
删除
选项是CASCADE
这个字段告诉我们当删除t_book中id=2
的那行,那么t_person中book_id等于2
那些行都要 对应删除- 删除选项除了
CASCADE
还有SetNull
,SetDefault
,Restrict
SetNull
就是当删除t_book中id=2
的那行,那么t_person中book_id等于2
那些行的book_id
都设置为NullSetDefault
就是当删除t_book中id=2
的那行,那么t_person中book_id等于2
那些行的book_id
都不变Restrict
限制删除,哪一行都不可以被删除
- 删除选项除了
###CoreData中实体的Relationship
-
打开CoreData项目的以xcdatamodeld结尾的文件(就是
数据模型管理文件
) -
![在此输入图片描述][2] [2]:
- 不过跟SQLite不一样的是,CoreData绑定的关系,设定的删除选项的以对象与对象之间
- 而SQLite两个表(对应CoreData的Managerobject)的关系绑定是以对象的属性与属性之间
</b> <b> ##挖坑
###2014年4月24日
晚上再补上,重构的
###2014年4月25日
CoreData的并发跟与RestAPI的作用