예제 #1
0
 /** 检测[映射表]是否建立,没有则建一张新表。 */
 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;
   // }
 }
예제 #2
0
 /** 检测[数据库表]是否建立,没有则建一张新表。 */
 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;
 }