一、传统DB数据库模块封装
1、继承SQLiteOpenHelper,重写OnCreate(SQLiteDatabase db)和OnUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)方法, 如下图:
2、在OnCreate(SQLiteDatabasedb)方法中初始化创建应用所有的数据库表
这里跟一下代码,我们会发现他首先是把获得每一个表的建表CREATE TABLE语句,然后execSQL该语句,这样就完成了一个具体表的新建,如产品表的新建语句代码片段截图如下:
思考一下、你觉得这种方式好吗?代码好看吗?你是否想到以后表结构变动后的场景吗?能否有一种更高效方式呢?动态生成sql语句?
传统DB模块代码 小小总结:
以上我们可以很明显的看到传统DB模块的代码具有以下几个缺点:
缺点一:如果表字段多,会显得代码臃肿
缺点二:代码灵活性差
缺点三:维护性差
二、寻求新的DB设计思想