从数据库中获取系列 ID

下面是我在DBAdapter获取id的函数,我想获取所有的ID,然后显示在toast信息的list中。不知道哪里出错了。

public Cursor fetchAllIDs() {

         return mDb.query(DATABASE_TABLE0, new String[] {IDno1}, null, null, null, null,   null);
   }

在按钮点击事件上调用的下面的函数,我想让 toast 里填充满所有的ID.

private void fillData() {
       //  从数据库中获取所有的ID
          Cursor c = DBHelper.fetchAllIDs();
          startManagingCursor(c);

          String[] from = new String[] {DBAdapter.IDno1 };
          Toast.makeText(getApplicationContext(), ""+from, Toast.LENGTH_LONG).show();
}

ChatGPT尝试为您解答,仅供参考
首先,您可以将数据库中查询的结果打印到日志中,以确定查询是否返回期望的结果。您也可以使用moveToFirst方法来确定查询是否返回数据。

您可以使用以下代码来获取ID列表:

List<String> idList = new ArrayList<>();
while (c.moveToNext()) {
    idList.add(c.getString(c.getColumnIndex(DBAdapter.IDno1)));
}

然后,您可以使用以下代码在Toast中显示ID列表:

Toast.makeText(getApplicationContext(), idList.toString(), Toast.LENGTH_LONG).show();

请注意,这将在Toast中显示列表的字符串表示形式,例如"[ID1, ID2, ID3]"。如果您希望在Toast中显示每个ID,则可以使用以下代码:

for (String id : idList) {
    Toast.makeText(getApplicationContext(), id, Toast.LENGTH_LONG).show();
}

这将在Toast中依次显示每个ID。