Vermes Mátyás wrote:
> http://comfirm.hu/pub/sqlite3-regression.rb

>     db.execute("select szamla,megnevezes from proba") do |row|
>         ...
>         db.execute( "update proba set megnevezes=? where szamla=?", 
> row[1]+"*", row[0] )

The equivalent Python code would be:

  for row in db.execute("select ... from proba"):
    db.execute("update proba ...")

> The linked ruby script demonstrates a feature of the newer sqlite3 libraries, 
> which may be a regression.

I do not know what you expect to happen, or what actually happens, but
changing a table and reading it through a query at the same time has an
unspecified result.  In particular, the database might either fetch the
next result on demand from the actual table or have some result rows
already precomputed, so it is undefined whether continuing the SELECT
sees the old values or the new values or both or neither.


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

Reply via email to