こんにちは、このコードを使用してデータベースにデータを挿入しています。別のアクティビティで Cursor を使用すると、table1 または table2 のデータを個別に表示できます。しかし、両方を使用すると、表 2 のデータしか表示されません。
カーソルを使用してデータを取得すると、カーソルが空であることがわかります。データを正しく挿入していないと思います。
私は何を間違っていますか?
ContentValues cv=新しい ContentValues();
//表1
cv.put(idAttendance, 1);
cv.put(attendPlayer, "Tiago");
db.insert(AttendanceTable, idAttendance, cv);
cv.put(idAttendance, 2);
cv.put(attendPlayer, "Joao");
db.insert(AttendanceTable, idAttendance, cv);
cv.put(idAttendance, 3);
cv.put(attendPlayer, "Pedro");
db.insert(AttendanceTable, idAttendance, cv);
//TABLE2
cv.put(idTrainInd, 1);
cv.put(TIindicator, "Remate Sucesso");
db.insert(TrainingIndicatorTable, idTrainInd, cv);
cv.put(idTrainInd, 2);
cv.put(TIindicator, "Remate SEM Sucesso");
db.insert(TrainingIndicatorTable, idTrainInd, cv);
まだデータを保存できません。
私のクラスは次のようなものです:
public class DatabaseHelper extends SQLiteOpenHelper {
private ... // database and tables
public DatabaseHelper(Context context) {
super(context, dbName, null,33);
}
SQLiteDatabase db = null;
@Override
public void onCreate(SQLiteDatabase db) {
//here i create all tables
db.execSQL("CREATE TABLE ... )
db=this.getWritableDatabase();
//THEN I USE THE CODE OF MY FIRST QUESTION
ContentValues cv=new ContentValues();
//TABLE 1
cv.put(idAttendance, 1);
cv.put(attendPlayer, "Tiago");
db.insert(AttendanceTable, idAttendance, cv);
cv.put(idAttendance, 2);
cv.put(attendPlayer, "Joao");
db.insert(AttendanceTable, idAttendance, cv);
cv.put(idAttendance, 3);
cv.put(attendPlayer, "Pedro");
db.insert(AttendanceTable, idAttendance, cv);
//TABLE2
//TABLE2
cv.put(idTrainInd, 1);
cv.put(TIindicator, "Remate Sucesso");
db.insert(TrainingIndicatorTable, idTrainInd, cv);
cv.put(idTrainInd, 2);
cv.put(TIindicator, "Remate SEM Sucesso");
db.insert(TrainingIndicatorTable, idTrainInd, cv);
//THEN I USE THIS TO RETURN GET THE DATA BUT TABLE TWO IS STILL EMPTY
/**Get all players from local database*/
public Cursor getPlayers() {
// db = this.getReadableDatabase();
Cursor c=db.rawQuery("SELECT player FROM Attendancetabl", null);
//c.close();
return c;
}
/**Get all players from local database*/
public Cursor getIndicadors() {
// db = this.getReadableDatabase();
Cursor c=db.rawQuery("SELECT indicator FROM TrainingIndicador", null);
//c.close();
return c;
}
最初の質問と同じ問題です。