主なアクティビティでは、アプリ データベースが存在するかどうかにかかわらず、アプリがいつ開かれるかを確認しようとしています。これは、最初の実行時にのみ、データベースを作成し、必要なすべてのレコードを挿入する機会を得たいためです。
しかし、それは私とはうまくいきません。このエラーが表示されます:
..原因: アンドロイド。データベース。CursorindexOutOfBoundsException: サイズ 0 のインデックス 0 が要求されました
私の最初の考えは、上記の例外/エラーは SQLiteException ではないか、何が欠けているのか正確にはわかりません。
これが私のコードです:
DBAdapter dbCheck = new DBAdapter(this);
boolean dbStatus;
String strData;
try {
dbCheck.open();
Cursor tblCheck = dbCheck.getThis_tblData(10); //get record no 10 - random number
strData = tblCheck.getString(5); // get the value of a field in the table
tblCheck.close();
dbCheck.close();
System.out.println("<---> Db found ");
} catch (SQLiteException e) {
//database doesn't exist yet. Create it.
System.out.println("<---> Db not found ");
Intent MakeDB = new Intent(MainActivity.this, com.kjsoft.tre.InsertData.class);
StartActivity(MakeDB);
}
助けてくれてありがとう!