[SQL-CVS] r937 - trunk/SQLObject/sqlobject/sqlite
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
From: <sub...@co...> - 2005-08-24 14:36:40
|
Author: phd Date: 2005-08-24 14:36:35 +0000 (Wed, 24 Aug 2005) New Revision: 937 Modified: trunk/SQLObject/sqlobject/sqlite/sqliteconnection.py Log: Stop PySQLite2 converting strings to unicode. Modified: trunk/SQLObject/sqlobject/sqlite/sqliteconnection.py =================================================================== --- trunk/SQLObject/sqlobject/sqlite/sqliteconnection.py 2005-08-24 13:59:26 UTC (rev 936) +++ trunk/SQLObject/sqlobject/sqlite/sqliteconnection.py 2005-08-24 14:36:35 UTC (rev 937) @@ -1,5 +1,6 @@ from sqlobject.dbconnection import DBAPI from sqlobject.col import popKey + sqlite = None using_sqlite2 = False @@ -29,6 +30,10 @@ if 'encoding' in kw: import warnings warnings.warn(DeprecationWarning("pysqlite2 does not support the encoding option")) + opts["detect_types"] = sqlite.PARSE_DECLTYPES + for col_type in "text", "char", "varchar": + sqlite.register_converter(col_type, stop_pysqlite2_converting_strings_to_unicode) + sqlite.register_converter(col_type.upper(), stop_pysqlite2_converting_strings_to_unicode) else: opts['autocommit'] = autoCommit if 'encoding' in kw: @@ -124,3 +129,6 @@ def createIndexSQL(self, soClass, index): return index.sqliteCreateIndexSQL(soClass) + +def stop_pysqlite2_converting_strings_to_unicode(s): + return s |