我正在使用Sqlite與android開發和應用程序,它可以在未來定製(爲開發)。我用數據創建了一個數據庫,然後用它爲應用程序創建數據庫。因此,如果將來需要做出任何更改,或者我將來爲其他人編寫應用程序,那麼我所要做的就是更改此原始數據庫。這背後的想法是開發者的數據庫將設置所有的用戶界面和一切與應用程序。數據庫創建數據庫
我被困在接下來做什麼我有我需要在應用程序中的數據庫作爲開發人員完全填充。我的想法是創建另一個DBHelper類,並在該引用內引用新DB類中的原始DBHelper類和查詢。所以這是我想要從以前的數據庫中創建一個數據庫中的第二DBHelper類:
public class appDbHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "library.db"; //database name
Cursor all, tables, options, ui_type;
SQLiteDatabase database;
public appDbHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
DBHandler databaseHelper = new DBHandler(context);
database = databaseHelper.getReadableDatabase();
all = database.rawQuery("SELECT * FROM config", null);
tables = database.rawQuery("SELECT * FROM table_names", null);
options = database.rawQuery("SELECT * FROM options", null);
ui_type = database.rawQuery("SELECT * FROM ui_type", null);
}
@Override
public void onCreate(SQLiteDatabase db) {
for(int i=0; i<tables.getCount(); i++){
tables.moveToPosition(i+1);
String sql = "";
for(int j = 0; i < all.getCount(); j++){
if (all.moveToFirst()) {
do{
sql = ", " + all.getString(2) + " " + all.getString(5).toUpperCase();
}
while (all.moveToNext());
}
}
Log.v("DatabaseSQL", sql);
database.execSQL("CREATE TABLE " + tables.getString(1) + "(_id INTEGER PRIMARY KEY AUTOINCREMENT"+sql+");");
}
}
但我有一種感覺,這是不是要什麼,我需要做的方式。任何幫助將不勝感激。
我不知道我是否理解一切正確。你有一個你讀的數據庫設置用戶界面和東西?如果是,爲什麼?從來沒有聽說有人使用數據庫來定製應用程序......第二個問題:問題是什麼?你想知道如何同時打開2個數據庫?我有點丟了你的問題... – WarrenFaith 2010-12-21 10:40:54
是的,原始數據庫是用來設置數據庫的應用程序,它將存儲應用程序的數據,這又取決於要存儲的數據將顯示一個不同的UI視圖的類型。問題是我在完全錯誤的方式?這是一個應用程序,可以用於許多不同的應用程序多次,但我只想要一個地方,這是爲應用程序更改,在我的例子中它是第一個配置數據庫。 – SamRowley 2010-12-21 10:44:12