Пожалуйста, помогите.При изменении версии базы данных в коде ничего не приходит - данные в приложении остаются от старой базы данных.
В чем проблема?Я делаю изменения в базе данных.Я изменяю номер версии базы данных, но в приложении ничего не меняется.
class DatabaseHelper extends SQLiteOpenHelper {
private static String DB_PATH;
private static String DB_NAME = "bd.db";
private static final int SCHEMA = 28; //version
static final String TABLE = "categories_second";
private Context myContext;
DatabaseHelper(Context context) {
super(context, DB_NAME, null, SCHEMA);
this.myContext = context;
DB_PATH = context.getFilesDir().getPath() + DB_NAME;
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE "+TABLE+"(_id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,name TEXT NOT NULL,items TEXT,categories INTEGER DEFAULT NULL,pictures TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE);
onCreate(db);
}
void create_db() {
InputStream myInput = null;
OutputStream myOutput = null;
try {
File file = new File(DB_PATH);
if (!file.exists()) {
this.getReadableDatabase();
myInput = myContext.getAssets().open(DB_NAME);
String outFileName = DB_PATH;
myOutput = new FileOutputStream(outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer)) > 0) {
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myOutput.close();
myInput.close();
}
} catch (IOException ex) {
Log.d("DatabaseHelper", ex.getMessage());
}
}
public SQLiteDatabase open() throws SQLException {
return SQLiteDatabase.openDatabase(DB_PATH, null, SQLiteDatabase.OPEN_READWRITE);
}
}
Заранее спасибо