Android sqlite で 1 つ知りたいことがあります。
データベースをSDカードに作成しました。そのため、`upgrage() メソッドはありません。
public class DatabaseClass
{
public static final String DATABASE_FILE_PATH = "/sdcard";
public static final String DATABASE_NAME = "testDatabase";
public static final String TRACKS_TABLE_CREATE =
"create table if not exists casecategory (_id INTEGER primary key autoincrement, "
+ "category_name TEXT not null);";
public SQLiteDatabase database;
public DatabaseClass()
{
try
{
database = SQLiteDatabase.openOrCreateDatabase(DATABASE_FILE_PATH + File.separator + DATABASE_NAME, null);
createTables();
}
catch (SQLiteException ex)
{
Log.e("Hello", "error -- " + ex.getMessage(), ex);
}
finally
{
database.close();
}
}
内部メモリでは、次のように作成します:-
public class DatabaseClass extends SQLiteOpenHelper
{
/*Constants */
public final static String DATABASE_NAME ="localdbfile.db";
public final static String NAME ="name";
public final static String ADDRESS ="address";
public final static String CITY ="city";
public DatabaseClass(Context context) {
super(context, DATABASE_NAME, null, 1);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL( "CREATE TABLE mylistdata(_id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT, address TEXT,city TEXT);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP Table mylistdata");
onCreate(db);
}
}
内部メモリでversion
番号を変更してupgrade()
呼び出します。DBをアップグレードします。
upgrade
データベースのバージョンをデータベース化したい場合sdcard
。
可能であれば、どうすればよいですか。