0

我想从我的表中选择 *,我不想将 colnames 与 colindex 同步。

是否有一种内置方法可以使用 columnNames 而不是 columnIndexes 将列名提取到 Cursor 上?

所以我可以使用cursor.getStringForColumnName("name");而不是知道第 4 列是“名称”列并使用cursor.getString(4);

4

3 回答 3

1

好吧,是的,您可以为此目的使用PRAGMA 查询

这里,是一个例子

 Cursor ti = db.rawQuery("PRAGMA table_info(mytable)", null);
    if ( ti.moveToFirst() ) {
        do {
            System.out.println("col: " + ti.getString(1));
        } while (ti.moveToNext());
    }
于 2013-05-05T08:01:00.430 回答
1

我的理解是你想在 Cursor 中使用 coulmn 名称。您实际上可以getColumnIndex(String columnName)使用列名自动获取索引。在这里阅读更多。然后您可以继续操作。这样你就不需要记住索引了。希望这有助于其他请评论。

于 2013-05-05T08:01:10.617 回答
1
cursor.getString(getColumnIndex("name"));
于 2013-05-05T08:03:55.527 回答