On 11 Apr 2017, at 12:33pm, Reid Thompson <reid.thomp...@ateb.com> wrote:

> Does 'more complicated' in the below scenario mean that there is
> potential for records to be returned more than once if I use random()?

The problem is not to do with random().  The problem is to do with modifying a 
field used in your SELECT command.  Suppose you have an index on the column 
"name" and you execute

SELECT name FROM treetypes ORDER BY name

with the following names

apple
lemon
oak
orange
teak
willow

You execute _step() twice, returning the top two, then issue

UPDATE treetypes SET name="citrus" WHERE name="orange"

What do you expect SQLite to do for the SELECT ?  Should it return a list of 
names which is clearly not in the order you asked for ?  Should it miss out one 
of the rows even though you asked for them all ?  Should it return "orange" 
even though you have already changed that value ?

That’s the "more complicated".  And for the sanity of people debugging your 
code it’s better to ensure it never happens.

Simon.
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to