Android sqlite несколько таблиц - PullRequest
0 голосов
/ 28 октября 2011

Я хочу создать 2 таблицы в БД sqlite. Я вытащил базу данных из эмулятора на компьютер, но вторую таблицу создать нельзя, только первая таблица была создана успешно. Могу ли я увидеть успехи таблицы, которые нужно создать, или даже данные не были введены? Или я сначала должен ввести данные, а потом посмотреть их вручную, сначала вытащив БД из эмулятора?

Вот мой код для создания нескольких таблиц

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

Ответы [ 3 ]

3 голосов
/ 30 октября 2011

Я уже решил это, чтобы добавить внешний ключ в 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

0 голосов
/ 28 октября 2011

В этом случае db.execSQL (Table_CREATE_SQL) должен нормально работать, но у него нет средств для возврата каких-либо данных, однако он выдает SQLException, если строка SQL недопустима.

Вы можете извлечь БД и использовать Браузер SQLite для проверки таблиц.

0 голосов
/ 28 октября 2011

Для просмотра данных вручную ( не программно ) из базы данных вы можете использовать SQLiteManager плагины Firefox

...