質問: Android sqlite複数のテーブル 私は、sqliteデータベースに2つのテーブルを作成したい。私はエミュレータからPCにdbを引っ張ったが、2番目のテーブルを作成することはできません最初のテーブルが正常に作成されました。作成されるテーブルの成功を確認することはできますか?データが入力されていないことはありますか?または、まずデータを入力してから、まずエミュレータからDBを取り出して手動で見ることができますか? ここで私のコードは、複数のテーブルを作成する ``` db.execSQL("CREATE TABLE almag (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, jekel TEXT);"); db.execSQL("CREATE TABLE score (_id INTEGER PRIMARY KEY AUTOINCREMENT, score INTEGER, userId INTEGER FOREIGN KEY REFERENCES almag (_id));"); //create table score ```
回答: 私はすでにアンドロイド2.2でこれらのコードを追加する必要が外来のキーを追加するために、それを解決した ``` public void onCreate(SQLiteDatabase db) { db.execSQL("CREATE TABLE almag (_id INTEGER PRIMARY KEY AUTOINCREMENT, nama TEXT, jekel TEXT);"); db.execSQL("CREATE TABLE score (_id INTEGER PRIMARY KEY AUTOINCREMENT, score INTEGER, userId INTEGER NOT NULL, FOREIGN KEY (userId) REFERENCES almag(_id) ON DELETE CASCADE);"); //create table score db.execSQL("PRAGMA foreign_keys = ON;"); } ``` reference