View Single Post
Old 06-17-2014, 08:24 PM   #1
DaltonST
Deviser
DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.DaltonST ought to be getting tired of karma fortunes by now.
 
DaltonST's Avatar
 
Posts: 2,265
Karma: 2090983
Join Date: Aug 2013
Location: Texas
Device: none
Plugin row_factory values in sqlite3.connection

After searching this plugin forum, the sqlite3 documentation at https://docs.python.org/2/library/sq...on.row_factory, and calibre>src> , I am left with the single option of posting here to ask a simple question that is amazingly not answered in detail in the above documentation: What are the valid values for row_factory that will not return an error, especially the common "Float type is required" error.

My code at the moment is:

row_factory = sqlite3.Row
my_db = sqlite3.connect(path,row_factory,detect_types=sqli te3.PARSE_DECLTYPES|sqlite3.PARSE_COLNAMES)


There are a few values that failed, although sqlite.py shows them to be conceptually valid:

1. row_factory=(lambda cursor, row : list(row))
2. row_factory=None
3. row_factory=Connection

In standalone Python 2.7 using Sqlite3 on Windows 7, a simple "db = sqlite3.connect(dbpath)" works just fine. I am in need of the secret handshake that Calibre wants me to provide. Can you help?

Thank you in advance for your Calibre wisdom.
DaltonST is offline   Reply With Quote