Android Open Source - android-sqlite-helper Migration Helper






From Project

Back to project page android-sqlite-helper.

License

The source code is released under:

Apache License

If you think the Android project android-sqlite-helper listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package net.ichigotake.sqlitehelper;
/*from w w  w .  j a v  a 2 s  .  co  m*/
import android.database.sqlite.SQLiteDatabase;

import net.ichigotake.sqlitehelper.ddl.AlterTable;
import net.ichigotake.sqlitehelper.ddl.CreateIndex;
import net.ichigotake.sqlitehelper.ddl.CreateTable;
import net.ichigotake.sqlitehelper.schema.Table;

public class MigrationHelper {

    public static void onCreate(SQLiteDatabase db, Configuration configuration) {
        for (Table table : configuration.getDatabaseTables()) {
            new CreateTable(db, table.getTableSchema()).createTableIfNotExists();
        }
        configuration.getMigrationCallback().onAfterCreate(db);
    }

    public static void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion, Configuration configuration) {
        for (Table table : configuration.getDatabaseTables()) {
            if (oldVersion <= table.getSenseVersion() && table.getSenseVersion() <= newVersion) {
                new CreateTable(db, table.getTableSchema()).createTableIfNotExists();
            }
            new CreateIndex(db, table.getTableSchema()).createIndexIfNotExists();
            new AlterTable(db, table).addColumn();
        }
        configuration.getMigrationCallback().onAfterUpgrade(db, oldVersion, newVersion);
    }

    private MigrationHelper() {}
}




Java Source Code List

net.ichigotake.sqlitehelper.Configuration.java
net.ichigotake.sqlitehelper.DatabaseHelperTest.java
net.ichigotake.sqlitehelper.DatabaseHelper.java
net.ichigotake.sqlitehelper.MigrationCallback.java
net.ichigotake.sqlitehelper.MigrationHelper.java
net.ichigotake.sqlitehelper.MockConfiguration.java
net.ichigotake.sqlitehelper.MockTable.java
net.ichigotake.sqlitehelper.NoMigrationCallback.java
net.ichigotake.sqlitehelper.TableCursor.java
net.ichigotake.sqlitehelper.ddl.AlterTableTest.java
net.ichigotake.sqlitehelper.ddl.AlterTable.java
net.ichigotake.sqlitehelper.ddl.CreateIndexTest.java
net.ichigotake.sqlitehelper.ddl.CreateIndex.java
net.ichigotake.sqlitehelper.ddl.CreateTableTest.java
net.ichigotake.sqlitehelper.ddl.CreateTable.java
net.ichigotake.sqlitehelper.dml.Order.java
net.ichigotake.sqlitehelper.dml.SelectTest.java
net.ichigotake.sqlitehelper.dml.Select.java
net.ichigotake.sqlitehelper.dml.WhereTest.java
net.ichigotake.sqlitehelper.dml.Where.java
net.ichigotake.sqlitehelper.schema.DeletableTable.java
net.ichigotake.sqlitehelper.schema.FieldAttribute.java
net.ichigotake.sqlitehelper.schema.Index.java
net.ichigotake.sqlitehelper.schema.InsertableTable.java
net.ichigotake.sqlitehelper.schema.TableFieldType.java
net.ichigotake.sqlitehelper.schema.TableField.java
net.ichigotake.sqlitehelper.schema.TableSchemaBuilder.java
net.ichigotake.sqlitehelper.schema.TableSchema.java
net.ichigotake.sqlitehelper.schema.Table.java
net.ichigotake.sqlitehelper.schema.UniqueField.java
net.ichigotake.sqlitehelper.schema.UpdatableTable.java