/** 检测[映射表]是否建立,没有则建一张新表。 */ public synchronized void checkOrCreateMappingTable( SQLiteDatabase db, String tableName, String column1, String column2) { // 关键点0:[实体表]是否OK EntityTable table = getMappingTable(tableName, column1, column2); // if (!table.isChecked) { // 关键点1:初始化全部数据库表 initAllTablesFromSQLite(db); // 关键点2:判断[数据库表]是否存在,是否需要新加列。 if (!checkExistAndColumns(db, table)) { // 关键点3:新建[数据库表]并加入表队列 if (createTable(db, table)) { putNewSqlTableIntoMap(table); } } // table.isChecked = true; // } }
/** 检测[数据库表]是否建立,没有则建一张新表。 */ public synchronized EntityTable checkOrCreateTable(SQLiteDatabase db, Class claxx) { // 关键点0:[实体表]是否OK EntityTable table = getTable(claxx); // if (!table.isChecked) { // 关键点1:初始化全部数据库表 initAllTablesFromSQLite(db); // table lock synchronized // 关键点2:判断[数据库表]是否存在,是否需要新加列。 if (!checkExistAndColumns(db, table)) { // 关键点3:新建[数据库表]并加入表队列 if (createTable(db, table)) { putNewSqlTableIntoMap(table); } } // table.isChecked = true; // } return table; }