On Friday, 25 October, 2019 14:02, Peng Yu <pengyu...@gmail.com> wrote:
>So basically an empty string in isolation_level is the same as >"DEFERRED"? This is confusing. I think it should have been implemented >so that the value of the isolation_level attribute is DEFERRED when it >is not specified in .connect(). But that would not be dbapi compliant, and the whole point of the pysqlite2 (sqlite3) wrapper is that it is dbapi compliant. This means that the "interface" is the same for a whole raft of things that are all different and attempts to make them all work equally poorly. The 'default' is an empty string ('') simply because that means "do the default thing that the underlying implementation does, and we have absolutely no clue nor do we care what that default is". In the PARTICULAR case of SQLite3 the default is that "BEGIN TRANSACTION;" is the same as "BEGIN DEFERRED TRANSACTION;". However, for HobblinGobblin7 the "BEGIN TRANSACTION;" is the same as "BEGIN OBFUSCATED TRANSACTION;". -- The fact that there's a Highway to Hell but only a Stairway to Heaven says a lot about anticipated traffic volume. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users