gpt4 book ai didi

java - ORMLite Android-从单个表中获取 17 列中的 1 列

转载 作者:行者123 更新时间:2023-12-01 04:13:27 25 4
gpt4 key购买 nike

我有一个表“公司”,其中包含 3 列 [ name、id 、address ]。但我只想获取“名称”列值。我就是这样做的

Dao<Company, String> dao = getDBHelper().getCompanyDao();

QueryBuilder<Company, String> queryBuilder = dao.queryBuilder();
queryBuilder.orderBy(Company.USERNAME_FIELD_NAME, true);
**queryBuilder.selectColumns("name");**
PreparedQuery<Company> preparedQuery = queryBuilder.prepare();
CloseableIterator<Company> iterator = dao.iterator(preparedQuery);
AndroidDatabaseResults results = (AndroidDatabaseResults) iterator.getRawResults();
Cursor cursor = results.getRawCursor();

但是当我添加“queryBuilder.selectColumns("name") ”时,应用程序崩溃了。请帮助我。我想要光标,因为我使用光标适配器来填充数据。

崩溃日志在这里:

java.lang.NullPointerException
at com.j256.ormlite.stmt.QueryBuilder.appendFieldColumnName(QueryBuilder.java:593)
at com.j256.ormlite.stmt.QueryBuilder.appendColumns(QueryBuilder.java:585)
at com.j256.ormlite.stmt.QueryBuilder.appendStatementStart(QueryBuilder.java:405)
at com.j256.ormlite.stmt.StatementBuilder.appendStatementString(StatementBuilder.java:122)
at com.j256.ormlite.stmt.StatementBuilder.buildStatementString(StatementBuilder.java:106)
at com.j256.ormlite.stmt.StatementBuilder.prepareStatement(StatementBuilder.java:74)
at com.j256.ormlite.stmt.QueryBuilder.prepare(QueryBuilder.java:98)

最佳答案

But application is crashing when I add "queryBuilder.selectColumns("name")

哇。这是一个非常微妙且长期存在的错误。每当您尝试从没有 ID 字段的实体中选择列时,就会发生这种情况。我添加了此错误报告:

https://sourceforge.net/p/ormlite/bugs/162/

此问题已在 trunk 中修复,并将在 4.49 中修复。这是签到。

https://github.com/j256/ormlite-core/commit/ee95883040a3618a1d455b44f6bfd6935a8d4ec7

关于java - ORMLite Android-从单个表中获取 17 列中的 1 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19656544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com