私はJavaとAndroidスタジオの初心者です。リストアプリケーションを行う。そのためには、ユーザーの入力をデータベースに格納する必要があります。しかし、私は問題なくデータベースとテーブルを作成することができます。しかし、データベースに新しい行を追加しようとするたびに、エラーが発生します。ContentValues.insert()を使用してDBに行を追加できません。Android Studio(SQLiteLog:(1)そのようなテーブルはありません:....)
D/DatabaseHandler: ===Inside DatabaseHandler constructor===
D/DatabaseHandler: ===Inside onCreate from DatabaseHandler===
D/MainActivity: ==addToDatabase==
/SQLiteLog: (1) no such table: test_database
E/SQLiteDatabase: Error inserting STATE=14 TASK=13 ID =1
android.database.sqlite.SQLiteException: no such table: test_database (code 1): , while compiling: INSERT INTO test_database(STATE,TASK,ID ) VALUES (?,?,?)
データベース(DatabaseHandler)を作成し、テーブルを作成する(のonCreateを()):
public class DatabaseHandler extends SQLiteOpenHelper {
public DatabaseHandler(Context context) {
super(context, "test_database", null, 1);
Log.d(TAG, "===Inside DatabaseHandler constructor===");
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.d(TAG, "===Inside onCreate from DatabaseHandler===");
// String database_table = "CREATE TABLE task(" + COLUMN_ID + " INT NOT NULL," + COLUMN_TASK + " INT NOT NULL," + COLUMN_STATE + " INT NOT NULL)";
String database_table = "CREATE TABLE task(ID INT NOT NULL, TASK INT NOT NULL, STATE INT NOT NULL)";
db.execSQL(database_table);
}
}
を、最終的に私が使用される関数は、DBに新たな行を追加:
public int addToDatabase(SQLiteDatabase access, String task) {
Log.d(TAG, "==addToDatabase==");
if (access.isOpen() == false) {
Log.d(TAG, "[addToDatabase] Database is not Open");
return (-1);
}
ContentValues values = new ContentValues();
values.put("ID ", 1);
values.put("TASK", 13);
values.put("STATE", 14);
access.insert("test_database", null, values);
return (1);
私はすでに他の既存の投稿を見て自分で問題を解決しようとしています。データベースが正しく作成されなかったために原因が考えられます。それにもかかわらず、データベースを作成する際にエラーが発生する可能性があります。新しいものを追加しようとしているときだけです。
私はまた、データベースのバージョンでレポートになる可能性があることを読んだ...しかし、私は実際には理由を理解していない。(私はまだ公式文書を探している)。
誰でも私を説明して問題を解決する方法を教えていただけますか? 感謝:)
ねえが、そんなにありがとう、それが完璧に動作します。しかし、私は手動でインターネット上で私のアプリをアンインストールするために見たが、何か役に立つものを見つけられなかった、あなたは方法で私にそれを行うことができますか?感謝 –
私のコメントを編集しましたが、気づかなかったかもしれません。どうすれば私のアプリを手動でアンインストールできますか?ありがとう:) –
@ S7_0解決策がうまくいけば、アプリをアンインストールする必要はありません。アプリを設定し、アプリマネージャーを探してアプリを探してクリックしてアンインストールを選択するか、[アンインストール](http: /www.wikihow。あなたがあなたのアプリのアイコンを長くクリックすると、アンインストールされた機能がポップアップします。 –