一、基本创建要做的的事情:
- 主要思想:想办法凑够拼接完整建表sql语句, 需要的数据。
- 表的名称:根据类名定义
- 字段名称:类的成员变量,去掉_
- 字段的类型:类型编码到sql类型的映射类型,运行时type, 和 SQL type的映射表
- 主键:通过协议
二、每个类的功能:
- XMGSqliteTool:上一篇中讲到
- 对sqlite3的封装;
- 实现增删改、查功能;
- 执行sql语句。
- XMGModelTool:
- 对数据模型进行操作;
- 获取表名:根据该模型类名来定义,返回字符串;
+ (NSString *)tableName:(Class)cls
- 获取所有成员变量,类型为原生;
+ (NSDictionary *)classIvarNameTypeDic:(Class)cls;
- 获取所有成员变量,类型为数据库对应的类型;
+ (NSDictionary *)classIvarNameSqliteTypeDic:(Class)cls;
- 把成员变量和数据库对应的类型,拼接成字符串,返回字符串。(用于拼凑sql字段部分)
+ (NSString *)columnNamesAndTypesStr:(Class)cls;
- 获取表名:根据该模型类名来定义,返回字符串;
- XMGSqliteModelTool:
- 连接数据库工具和模型工具;
- 从模型工具中获取信息,拼接sql语句,让数据库执行。
- API:根据模型类和用户名来建表:
思想:尽可能多的, 能够自己获取, 就自己获取, 实在判定不了用的意图的, 只能让用户来告诉我们。
步骤:
1.创建表格的sql语句给拼接出来
1.1 获取表格名称
1.2 获取主键
1.3 获取一个模型里面所有的字段, 以及类型
2.执行
- XMGModelProtocol
由模型类遵守该协议,并且实现该类方法。
Snip20170802_102.png
网友评论