How about something like this that costs more to run: Given a table T with columns A, B, C,.. BEGIN TRANSACTION SELECT Count(*) AS Count [filter spec]; SELECT A,B,C,... [filter spec]; ROLLBACK or COMMIT
Doug > -----Original Message----- > From: sqlite-users <[email protected]> > On Behalf Of Simon Slavin > Sent: Tuesday, October 15, 2019 8:35 AM > To: SQLite mailing list <[email protected]> > Subject: Re: [sqlite] Last record > > On 15 Oct 2019, at 4:34pm, Philippe RIO <[email protected]> > wrote: > > > how could I know if I am reading the last record with > > sqlite (sqlite3_step)? > > Sorry, there's no way to do that for some arbitrary SELECT. > Because SQLite itself may not know. > > SQLite does not always process your query and store all the > results in memory. If there's an ideal index for your query, each > call to _step() just one more row. SQLite itself doesn't know it > has reached the end until it gets an error because it runs off the > end of the index. > _______________________________________________ > sqlite-users mailing list > [email protected] > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite- > users _______________________________________________ sqlite-users mailing list [email protected] http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

