2011-12-30 2 views
0

У меня есть приложение, которое имеет базу данных теперь я хочу, чтобы выпустить новую версию Applicaton , но моя база данных новое поле, добавленное и я хочу, чтобы мои старые данные в базе данных, а также добавить новую базу данных с дополнительные поляобновление Android базы данных Выпуск

будет ли моя база данных будут overided (я буду Losse моей копии данных) или новая база данных будут добавлены

ответ

0

внимание на onUpgrade метод :-)

public class WIMProvider extends ContentProvider { 

    private static final int DATABASE_VERSION = 2; 

    private DatabaseHelper mOpenHelper; 

    // ..... code ..... 

    private static class DatabaseHelper extends SQLiteOpenHelper { 

     private Context mContext; 

     public DatabaseHelper(Context context) { 
      super(context, DATABASE_NAME, null, DATABASE_VERSION); 
      mContext = context; 
     } 

     @Override 
     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 

      if (oldVersion == 1) { 
       db.execSQL("ALTER TABLE TCategory ADD COLUMN fiDefault integer DEFAULT 0"); 
       oldVersion++; 
      } 
      if (oldVersion == 2) { 
       db.execSQL("ALTER TABLE TCategory ADD COLUMN fsIcon nvarchar(50)"); 
       oldVersion++; 
      } 
     } 
} 
Смежные вопросы