0

sqlite db に 2 つのテーブルを作成したいと考えています。エミュレーターから PC にデータベースをプルしましたが、最初のテーブルが正常に作成されただけで 2 番目のテーブルを作成できません。テーブルが正常に作成されたこと、またはデータが入力されていないことを確認できますか? または、最初にデータを入力する必要があり、最初にエミュレーターからデータベースをプルして手動で表示できますか?

複数のテーブルを作成するコードは次のとおりです

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
4

3 に答える 3

3

Android 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;");
}

参照http://panierter-pinguin.de/blog/?p=138

于 2011-10-30T13:59:29.270 に答える
0

この場合、db.execSQL(Table_CREATE_SQL)は正常に機能するはずですが、データを返す手段はありませんが、SQL文字列が無効な場合はSQLExceptionをスローします。

DBを引き出し、SQLiteブラウザを使用してテーブルを確認できます。

于 2011-10-28T18:50:00.767 に答える
0

データベースから手動で (プログラムではなく) データを表示するには、Firefox のSQLiteManagerプラグインを使用できます。

于 2011-10-28T12:48:14.313 に答える