如何使用 Cursor 获取所有主键值并将其添加到 Arraylist 中?

Posted

技术标签:

【中文标题】如何使用 Cursor 获取所有主键值并将其添加到 Arraylist 中?【英文标题】:How to get all the primary key Values using Cursor and add it in Arraylist? 【发布时间】:2011-09-17 06:39:11 【问题描述】:

CREATE TABLE IF NOT EXISTS tableName _id integer 主键 autoincrement,Title varchar ,Description varchar .

我的表名是这样的。

请任何人帮助我。

【问题讨论】:

【参考方案1】:

我建议进一步解释这个问题,但我相信您正在寻找的是一种遍历光标并获取所有主键的方法。试试这样的:

ArrayList<Long> ids = new ArrayList<Long>();

if (cursor != null && cursor.getCount() > 0) 
    cursor.moveToFirst();
    do 
        long id = cursor.getLong(cursor.getColumnIndex(KEY_ROWID));
        ids.add(id);
     while (cursor.moveToNext());

【讨论】:

【参考方案2】:

让我们试试下面的代码, 如果假设表有两列_id和name,在查询Select语句时我们知道结果查询的columnindex。

 ArrayList<Integer> keyid = new ArrayList<Integer>();
           ArrayList<String> names= new ArrayList<String>();
           int id= 0;
           String name = null
        String statement = "Select * from  " + TABLE_NAME;
        Cursor c = db.rawQuery(statement, null);
        if (c.moveToFirst()) 
                do 
                             id = c.getInt(0);
                     name= c.getString(1);

                             keyid.add(id);
                             names.add(name);
                     while (c.moveToNext());
        
        c.close();

【讨论】:

以上是关于如何使用 Cursor 获取所有主键值并将其添加到 Arraylist 中?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中获取 JSON 数据并将其添加到 URL

如何从文本框中获取数据并将其添加到 dataTable?

如何获取所有本地图像并将其加载到swift中的数组中

您如何获取用户的输入并将其添加到 iframe 中的 URL?

如何在 Flutter 中运行函数并获取值并将其添加到文本中

从公共记录类型中获取所有记录并将其保存到设备