Is there any way, how to get Cursor for a query, which I am processing with ORMLite Dao object?
相关问题
- How can I create this custom Bottom Navigation on
- Bottom Navigation View gets Shrink Down
- How to make that the snackbar action button be sho
- Listening to outgoing sms not working android
- How to create Circular view on android wear?
Did you try some of Gray's advice from this post? He explains how you can select a column as another name, such as, select id as _id.
ORMLite now supports
next()
,previous()
,moveRelative(offset)
, ... methods on theCloseableIterator
class. This should allow you to move the underlyingCursor
object around at will.It also supports the following DAO Cursor methods:
dao.mapSelectStarRow(databaseResults)
Return the latest row from the database results from a query toselect *
. With this you can change the cursor location (for example) and then get the current object.dao.getSelectStarRowMapper()
Provides a mapper that you can use to map the object outside of the Dao.When you are building your own query with ORMLite, you use the
QueryBuilder
object.queryBuilder.prepare()
returns aPreparedQuery
which is used by various methods in the DAO. You can calldao.iterator(preparedQuery)
which will return aCloseableIterator
which is used to iterate through the results. There is aiterator.getRawResults()
to get access to theDatabaseResults
class. Under Android, this can be cast to anAndroidDatabaseResults
which has agetCursor()
method on it to return the AndroidCursor
.Something like the following code:
This is a bit complicated but you are definitely having to peer behind the vale to get to this object which is hidden by the database abstraction classes.
If you're in an Activity and don't want to mess around with the QueryBuilder give the following a go, which is just as effective.
If you mean the
getHelper()
method to reach the dao methods create etc. you only have to inherit from theOrmLiteBaseActivity<YourDBHelper>
and you can call it. It will look sth like this:If you mean the cursor to handle database operation: I don't think that you can reach it! But I don't understand why you should need it. ORMLite has nearly all functions of the cursor. So what do you need it for?