私は開発のためにアンドロイドとSqliteを使用しています。これは将来的には(dev用に)カスタマイズ可能です。私は、アプリケーション用のデータベースを作成するために使用されるデータを含むデータベースを作成しました。だから将来的に変更が必要な場合や、将来他の誰かのためにアプリケーションを作成する場合、私はこのオリジナルのデータベースを変更するだけです。この背後にあるアイデアは、開発者のデータベースは、すべてのUIとすべてのアプリケーションとは何かを設定することです。データベースを作成するデータベース
私は次の作業に執着しています。デベロッパーとしてアプリケーションに必要なデータベースが完全に設定されています。私の考えは、別のDBHelperクラスを作成し、その参照内に元のDBHelperクラスと新しいDBクラス内のクエリを作成することでした。
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+");");
}
}
しかし、私は、これは私が何をする必要があるかについて、進むべき道ではない感じを持っている:これは私が以前のデータベースからデータベースを作成しようとしている二DBHelperクラスです。どんな助けでも大歓迎です。
私はすべてのことを正しく理解しているかどうかはわかりません。あなたはUIと物事を設定するために読んだデータベースを持っていますか?はいの場合、なぜですか?誰かがアプリケーションをカスタマイズするためにデータベースを使用していると聞いたことはありません...第2の質問:問題は何ですか? 2つのデータベースを同時に開く方法を知りたいですか?私はあなたの質問で少し失われています... – WarrenFaith
はいソート、元のデータベースは、アプリケーションのためのデータを格納するアプリケーションのデータベースをセットアップするために使用されますこれは、 UIビューのタイプ。問題は、私はこれを完全に間違った方法で行っているのですか?それは、多くの異なるアプリケーションで何度も使用されるかもしれないアプリケーションですが、アプリケーションのためにこれが変更された場所が1つだけ必要です。私の例では、最初の設定データベースです。 – SamRowley