Your're welcome. As for no response from pyodbc that is indeed sloppy as is the fact that PyPi package does not work. Hats off to you for always being responsive (afaik). I often wonder what keeps you so motivated but that's off topic.
On Sep 8, 4:07 pm, Michael Bayer <mike...@zzzcomputing.com> wrote: > thanks, the two test failures would be expected in this case, will see what > response I get on the FreeTDS list if any. > > On Sep 8, 2011, at 3:07 PM, Victor Olex wrote: > > > Unfortunately I don't have access to a blank database and I took the > > chance and ran your tests on a non-empty database. Tests are mostly > > good: 5/7 pass. You should know that I used current trunk and simply > > commented out the line, which resets the supports_unicode_binds but it > > should be equivalent in effect to your patch. Without the patch all > > tests fail. Below is pretty verbose result for you. > > > I hope this helps, > > > Victor > > > ./sqla_nose.py -v test.sql.test_types:UnicodeTest --dburi="mssql > > +pyodbc://XXXX:xxx@xxx:2431/X? > > driver=SQLServer&port=2431&TDS_Version=8.0" --log- > > debug=sqlalchemy.orm.mapper --log-debug=sqlalchemy.pool --log- > > debug=sqlalchemy.engine > > DEBUG:sqlalchemy.pool.QueuePool:Created new connection > > <pyodbc.Connection object at 0xa3fdfa0> > > INFO:sqlalchemy.engine.base.Engine:SELECT user_name() as user_name; > > INFO:sqlalchemy.engine.base.Engine:() > > DEBUG:sqlalchemy.engine.base.Engine:Col ('user_name',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (u'SPEED_IT', ) > > INFO:sqlalchemy.engine.base.Engine: > > SELECT default_schema_name FROM > > sys.database_principals > > WHERE name = ? > > AND type = 'S' > > > INFO:sqlalchemy.engine.base.Engine:(u'SPEED_IT',) > > DEBUG:sqlalchemy.engine.base.Engine:Col ('default_schema_name',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (u'dbo', ) > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT [COLUMNS_1].[TABLE_SCHEMA], > > [COLUMNS_1].[TABLE_NAME], [COLUMNS_1].[COLUMN_NAME], [COLUMNS_1]. > > [IS_NULLABLE], [COLUMNS_1].[DATA_TYPE], [COLUMNS_1]. > > [ORDINAL_POSITION], [COLUMNS_1].[CHARACTER_MAXIMUM_LENGTH], > > [COLUMNS_1].[NUMERIC_PRECISION], [COLUMNS_1].[NUMERIC_SCALE], > > [COLUMNS_1].[COLUMN_DEFAULT], [COLUMNS_1].[COLLATION_NAME] > > FROM [INFORMATION_SCHEMA].[COLUMNS] AS [COLUMNS_1] > > WHERE [COLUMNS_1].[TABLE_NAME] = ? AND [COLUMNS_1].[TABLE_SCHEMA] = ? > > INFO:sqlalchemy.engine.base.Engine:(u'unicode_table', u'dbo') > > DEBUG:sqlalchemy.engine.base.Engine:Col ('TABLE_SCHEMA', 'TABLE_NAME', > > 'COLUMN_NAME', 'IS_NULLABLE', 'DATA_TYPE', 'ORDINAL_POSITION', > > 'CHARACTER_MAXIMUM_LENGTH', 'NUMERIC_PRECISION', 'NUMERIC_SCALE', > > 'COLUMN_DEFAULT', 'COLLATION_NAME') > > INFO:sqlalchemy.engine.base.Engine: > > CREATE TABLE unicode_table ( > > id INTEGER NOT NULL IDENTITY(1,1), > > unicode_varchar NVARCHAR(250) NULL, > > unicode_text NTEXT NULL, > > PRIMARY KEY (id) > > ) > > > INFO:sqlalchemy.engine.base.Engine:() > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> being returned to pool > > test.sql.test_types.UnicodeTest.test_blank_strings ... > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:INSERT INTO unicode_table > > (unicode_varchar) OUTPUT inserted.id VALUES (?) > > INFO:sqlalchemy.engine.base.Engine:(u'',) > > DEBUG:sqlalchemy.engine.base.Engine:Col ('id',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (1, ) > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT > > unicode_table.unicode_varchar > > FROM unicode_table > > INFO:sqlalchemy.engine.base.Engine:() > > DEBUG:sqlalchemy.engine.base.Engine:Col ('unicode_varchar',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (u'', ) > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:DELETE FROM unicode_table > > INFO:sqlalchemy.engine.base.Engine:() > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa3fdfa0> being returned to pool > > ok > > test.sql.test_types.UnicodeTest.test_ignoring_unicode_error ... > > DEBUG:sqlalchemy.pool.QueuePool:Created new connection > > <pyodbc.Connection object at 0xa4490e0> > > INFO:sqlalchemy.engine.base.Engine:SELECT user_name() as user_name; > > INFO:sqlalchemy.engine.base.Engine:() > > DEBUG:sqlalchemy.engine.base.Engine:Col ('user_name',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (u'SPEED_IT', ) > > INFO:sqlalchemy.engine.base.Engine: > > SELECT default_schema_name FROM > > sys.database_principals > > WHERE name = ? > > AND type = 'S' > > > INFO:sqlalchemy.engine.base.Engine:(u'SPEED_IT',) > > DEBUG:sqlalchemy.engine.base.Engine:Col ('default_schema_name',) > > DEBUG:sqlalchemy.engine.base.Engine:Row (u'dbo', ) > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT [COLUMNS_1].[TABLE_SCHEMA], > > [COLUMNS_1].[TABLE_NAME], [COLUMNS_1].[COLUMN_NAME], [COLUMNS_1]. > > [IS_NULLABLE], [COLUMNS_1].[DATA_TYPE], [COLUMNS_1]. > > [ORDINAL_POSITION], [COLUMNS_1].[CHARACTER_MAXIMUM_LENGTH], > > [COLUMNS_1].[NUMERIC_PRECISION], [COLUMNS_1].[NUMERIC_SCALE], > > [COLUMNS_1].[COLUMN_DEFAULT], [COLUMNS_1].[COLLATION_NAME] > > FROM [INFORMATION_SCHEMA].[COLUMNS] AS [COLUMNS_1] > > WHERE [COLUMNS_1].[TABLE_NAME] = ? AND [COLUMNS_1].[TABLE_SCHEMA] = ? > > INFO:sqlalchemy.engine.base.Engine:(u'unicode_err_table', u'dbo') > > DEBUG:sqlalchemy.engine.base.Engine:Col ('TABLE_SCHEMA', 'TABLE_NAME', > > 'COLUMN_NAME', 'IS_NULLABLE', 'DATA_TYPE', 'ORDINAL_POSITION', > > 'CHARACTER_MAXIMUM_LENGTH', 'NUMERIC_PRECISION', 'NUMERIC_SCALE', > > 'COLUMN_DEFAULT', 'COLLATION_NAME') > > INFO:sqlalchemy.engine.base.Engine: > > CREATE TABLE unicode_err_table ( > > sort INTEGER NULL, > > plain_varchar_no_coding_error VARCHAR(248) NULL > > ) > > > INFO:sqlalchemy.engine.base.Engine:() > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:INSERT INTO unicode_err_table > > (sort, plain_varchar_no_coding_error) VALUES (?, ?) > > INFO:sqlalchemy.engine.base.Engine:(1, 'Alors vous imaginez ma > > surprise, au lever du jour, quand une drle de petite voix ma rveill. > > Elle disait: Sil vous plat dessine-moi un mouton! ') > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT unicode_err_table.sort, > > unicode_err_table.plain_varchar_no_coding_error > > FROM unicode_err_table > > INFO:sqlalchemy.engine.base.Engine:() > > DEBUG:sqlalchemy.engine.base.Engine:Col ('sort', > > 'plain_varchar_no_coding_error') > > DEBUG:sqlalchemy.engine.base.Engine:Row (1, 'Alors vous imaginez ma > > surprise, au lever du jour, quand une drle de petite voix ma rveill. > > Elle disait: Sil vous plat dessine-moi un mouton! ') > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:INSERT INTO unicode_err_table > > (sort, plain_varchar_no_coding_error) VALUES (?, ?) > > INFO:sqlalchemy.engine.base.Engine:(2, u'Alors vous imaginez ma > > surprise, au lever du jour, quand une dr\xf4le de petite voix m\u2019a > > r\xe9veill\xe9. Elle disait: \xab S\u2019il vous pla\xeet\u2026 > > dessine-moi un mouton! \xbb') > > INFO:sqlalchemy.engine.base.Engine:COMMIT > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT unicode_err_table.sort, > > unicode_err_table.plain_varchar_no_coding_error > > FROM unicode_err_table ORDER BY unicode_err_table.sort > > INFO:sqlalchemy.engine.base.Engine:() > > DEBUG:sqlalchemy.engine.base.Engine:Col ('sort', > > 'plain_varchar_no_coding_error') > > DEBUG:sqlalchemy.engine.base.Engine:Row (1, 'Alors vous imaginez ma > > surprise, au lever du jour, quand une drle de petite voix ma rveill. > > Elle disait: Sil vous plat dessine-moi un mouton! ') > > DEBUG:sqlalchemy.engine.base.Engine:Row (2, 'Alors vous imaginez ma > > surprise, au lever du jour, quand une dr\xf4le de petite voix m?a r > > \xe9veill\xe9. Elle disait: \xab S?il vous pla\xeet? dessine-moi un > > mouton! ') > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> being returned to pool > > DEBUG:sqlalchemy.pool.QueuePool:Connection <pyodbc.Connection object > > at 0xa4490e0> checked out from pool > > INFO:sqlalchemy.engine.base.Engine:SELECT [COLUMNS_1].[TABLE_SCHEMA], > > [COLUMNS_1].[TABLE_NAME], [COLUMNS_1].[COLUMN_NAME], [COLUMNS_1]. > > [IS_NULLABLE], [COLUMNS_1].[DATA_TYPE], [COLUMNS_1]. > > [ORDINAL_POSITION], [COLUMNS_1].[CHARACTER_MAXIMUM_LENGTH], > > [COLUMNS_1].[NUMERIC_PRECISION], [COLUMNS_1].[NUMERIC_SCALE], > > [COLUMNS_1].[COLUMN_DEFAULT], [COLUMNS_1].[COLLATION_NAME] > > FROM [INFORMATION_SCHEMA].[COLUMNS] AS [COLUMNS_1] > > WHERE [COLUMNS_1].[TABLE_NAME] = ? AND [COLUMNS_1].[TABLE_SCHEMA] = ? > > INFO:sqlalchemy.engine.base.Engine:(u'unicode_err_table', u'dbo') > > DEBUG:sqlalchemy.engine.base.Engine:Col ('TABLE_SCHEMA', 'TABLE_NAME', > > 'COLUMN_NAME', 'IS_NULLABLE', 'DATA_TYPE', 'ORDINAL_POSITION', > > ... > > read more » -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.