02-19 16:46:01.677:e/androidruntime(13159):android.database.sqlite.sqliteexception:そのような表:ノート:ノート
質問
1つのテーブルにアクセスしようとすると、このエラーが発生しています。
02-19 16:46:01.677:e/androidruntime(13159):android.database.sqlite.sqliteException:そのような表:ノート:メモに挿入(ユーザー、テキスト)値( 'john'、 'testingValue' '
しかし、私はテーブルを作成しました!データベースに2つのテーブル(「ユーザー」と「メモ」)があり、同じ方法でアクセスしますが、テーブル「メモ」に値を挿入しようとすると、そのエラーがあります。
それがコードです:
package com.loopr;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class SQL extends SQLiteOpenHelper {
String createUserTable = "CREATE TABLE users (name TEXT)";
String createNotesTable = "CREATE TABLE notes (user TEXT, text TEXT)";
public SQL(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(createNotesTable);
db.execSQL(createUserTable);
}
@Override
public void onUpgrade(SQLiteDatabase db, int before, int after) {
//Nothing at the moment
}
}
私に何ができる?ありがとう。
解決
変更してみてください int version
そして、これをあなたに入れてください onUpgrade
過剰な方法:
// Drop the old table.
db.execSQL("DROP TABLE IF EXISTS notes");
// Create a new one.
onCreate(db);
他のヒント
何ができますか? Androidでデバッグすることを学びます。で資料を読んでください このリンク. 。 DDMSのファイルエクスプローラーを使用して、エミュレータからデータベースを引く方法を把握します。 SQLite Manager(Firefox)のようなツールを入手して、これらのデータベースを調べてください - それは私を非常に助けてくれました。また、SQLite Managerを使用してDBでRAW SQLステートメントを実行して、SQLを作成してテストすることができます。
所属していません StackOverflow