为了账号安全,请及时绑定邮箱和手机立即绑定

联赛规模 = 0,即使 ID 是正确的

联赛规模 = 0,即使 ID 是正确的

繁花如伊 2021-10-17 16:56:11
我正在尝试更新 SQLite 数据库中的信息。我的 getter 读取的信息是正确的,但是每当我去更新记录中的信息时,即联赛名称、基础得分等。我被告知数组的大小为 0。我可以在调试中看到我正在调用正确的记录 ID,并且从数据库中提取的信息是正确的。这向我确认记录确实是正确的。我可以在调试中看到信息是正确的,并且变量正在存储对记录所做的更改。看不出来我做错了什么。我在这个网站上浏览了几个不同的帖子,包括这个。什么导致 java.lang.ArrayIndexOutOfBoundsException 以及如何防止它?我似乎找不到任何可以帮助我解决这个问题的东西。有人可以帮助我吗,我已经在下面发布了我的代码。我在进入活动时获取记录的代码public void getLeagueProfile(int position) {        SQLiteOpenHelper database = new DatabaseHelper(this);        SQLiteDatabase db = database.getReadableDatabase();        Cursor viewLeagueProfile = db.query(League.TABLE_NAME, new String[]{League.COLUMN_ID, League.COLUMN_NAME, League.COLUMN_BASE_SCORE, League.COLUMN_BASE_SCORE_PERCENTAGE, League.COLUMN_WINS, League.COLUMN_LOSSES, League.COLUMN_TIMESTAMP}, League.COLUMN_ID + "=?", new String[]{String.valueOf(position)}, null, null, null, null);        if (viewLeagueProfile.moveToFirst()) {            //Prepare League Object            league = new League(viewLeagueProfile.getInt(viewLeagueProfile.getColumnIndex(League.COLUMN_ID)), ln = viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_NAME)), bs = viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_BASE_SCORE)), bsp = viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_BASE_SCORE_PERCENTAGE)), lw = viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_WINS)), ll = viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_LOSSES)), viewLeagueProfile.getString(viewLeagueProfile.getColumnIndex(League.COLUMN_TIMESTAMP)));            Log.e("values : ", ln + ", " + bs + ", " + bsp + ", " + lw + ", " + ll);        }    }
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 116 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信