I tried some patterns - NLS_LANG set/unset, convert_unicode True/
False, encoding set/unset - with logging.(r3578)
As a result, I got almost the same exceptions and logs.(see below)
In addition, that exception raises when 'filter_by' with 'NUMBER'
columns too.
So, I think the latest problem does not have relation with this
'convert_unicode' problem.

Log output (DEBUG level)
----------------------------------------------------------------------
INFO:sqlalchemy.pool.QueuePool.0x..70:Created new connection
<cx_Oracle.Connection to [EMAIL PROTECTED]>
INFO:sqlalchemy.pool.QueuePool.0x..70:Connection <cx_Oracle.Connection
to [EMAIL PROTECTED]> checked out from pool
INFO:sqlalchemy.engine.base.Engine.0x..70:select distinct OWNER from
ALL_TAB_COLUMNS where TABLE_NAME = :table_name
INFO:sqlalchemy.engine.base.Engine.0x..70:{'table_name': 'EMP'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('OWNER',)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('SCOTT',)
INFO:sqlalchemy.engine.base.Engine.0x..70:select COLUMN_NAME,
DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE,
DATA_DEFAULT from ALL_TAB_COLUMNS where TABLE_NAME = :table_name and
OWNER = :owner
INFO:sqlalchemy.engine.base.Engine.0x..70:{'owner': 'SCOTT',
'table_name': 'EMP'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('COLUMN_NAME',
'DATA_TYPE', 'DATA_LENGTH', 'DATA_PRECISION', 'DATA_SCALE',
'NULLABLE', 'DATA_DEFAULT')
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('EMPNO', 'NUMBER', 22,
4, 0, 'N', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('ENAME', 'VARCHAR2',
10, None, None, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('JOB', 'VARCHAR2', 9,
None, None, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('MGR', 'NUMBER', 22,
4, 0, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('HIREDATE', 'DATE', 7,
None, None, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('SAL', 'NUMBER', 22,
7, 2, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('COMM', 'NUMBER', 22,
7, 2, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('DEPTNO', 'NUMBER',
22, 2, 0, 'Y', None)
INFO:sqlalchemy.engine.base.Engine.0x..70:SELECT
             ac.constraint_name,
             ac.constraint_type,
             loc.column_name AS local_column,
             rem.table_name AS remote_table,
             rem.column_name AS remote_column,
             rem.owner AS remote_owner
           FROM all_constraints ac,
             all_cons_columns loc,
             all_cons_columns rem
           WHERE ac.table_name = :table_name
           AND ac.constraint_type IN ('R','P')
           AND ac.owner = :owner
           AND ac.owner = loc.owner
           AND ac.constraint_name = loc.constraint_name
           AND ac.r_owner = rem.owner(+)
           AND ac.r_constraint_name = rem.constraint_name(+)
           -- order multiple primary keys correctly
           ORDER BY ac.constraint_name, loc.position, rem.position
INFO:sqlalchemy.engine.base.Engine.0x..70:{'owner': 'SCOTT',
'table_name': 'EMP'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('CONSTRAINT_NAME',
'CONSTRAINT_TYPE', 'LOCAL_COLUMN', 'REMOTE_TABLE', 'REMOTE_COLUMN',
'REMOTE_OWNER')
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('FK_DEPTNO', 'R',
'DEPTNO', 'DEPT', 'DEPTNO', 'SCOTT')
INFO:sqlalchemy.engine.base.Engine.0x..70:select distinct OWNER from
ALL_TAB_COLUMNS where TABLE_NAME = :table_name
INFO:sqlalchemy.engine.base.Engine.0x..70:{'table_name': 'DEPT'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('OWNER',)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('SCOTT',)
INFO:sqlalchemy.engine.base.Engine.0x..70:select COLUMN_NAME,
DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE,
DATA_DEFAULT from ALL_TAB_COLUMNS where TABLE_NAME = :table_name and
OWNER = :owner
INFO:sqlalchemy.engine.base.Engine.0x..70:{'owner': 'SCOTT',
'table_name': 'DEPT'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('COLUMN_NAME',
'DATA_TYPE', 'DATA_LENGTH', 'DATA_PRECISION', 'DATA_SCALE',
'NULLABLE', 'DATA_DEFAULT')
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('DEPTNO', 'NUMBER',
22, 2, 0, 'N', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('DNAME', 'VARCHAR2',
14, None, None, 'Y', None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('LOC', 'VARCHAR2', 13,
None, None, 'Y', None)
INFO:sqlalchemy.engine.base.Engine.0x..70:SELECT
             ac.constraint_name,
             ac.constraint_type,
             loc.column_name AS local_column,
             rem.table_name AS remote_table,
             rem.column_name AS remote_column,
             rem.owner AS remote_owner
           FROM all_constraints ac,
             all_cons_columns loc,
             all_cons_columns rem
           WHERE ac.table_name = :table_name
           AND ac.constraint_type IN ('R','P')
           AND ac.owner = :owner
           AND ac.owner = loc.owner
           AND ac.constraint_name = loc.constraint_name
           AND ac.r_owner = rem.owner(+)
           AND ac.r_constraint_name = rem.constraint_name(+)
           -- order multiple primary keys correctly
           ORDER BY ac.constraint_name, loc.position, rem.position
INFO:sqlalchemy.engine.base.Engine.0x..70:{'owner': 'SCOTT',
'table_name': 'DEPT'}
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Col ('CONSTRAINT_NAME',
'CONSTRAINT_TYPE', 'LOCAL_COLUMN', 'REMOTE_TABLE', 'REMOTE_COLUMN',
'REMOTE_OWNER')
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('PK_DEPT', 'P',
'DEPTNO', None, None, None)
DEBUG:sqlalchemy.engine.base.Engine.0x..70:Row ('PK_EMP', 'P',
'EMPNO', None, None, None)
INFO:sqlalchemy.pool.QueuePool.0x..70:Connection <cx_Oracle.Connection
to [EMAIL PROTECTED]> being returned to pool
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) Identified primary key
columns: ColumnSet([Column(u'empno',
OracleNumeric(precision=4,length=0,asdecimal=True), primary_key=True,
nullable=False)])
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty
empno
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty
ename
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty job
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty mgr
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty
hiredate
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty sal
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty comm
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) adding ColumnProperty
deptno
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) constructed
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) _initialize_properties()
started
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
empno on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
ename on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
job on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
mgr on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
hiredate on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
sal on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
comm on class Emp
INFO:sqlalchemy.orm.strategies.ColumnLoader:register managed attribute
deptno on class Emp
INFO:sqlalchemy.orm.mapper.Mapper:(Emp|emp) _initialize_properties()
complete
INFO:sqlalchemy.pool.QueuePool.0x..70:Connection <cx_Oracle.Connection
to [EMAIL PROTECTED]> checked out from pool
INFO:sqlalchemy.engine.base.Engine.0x..70:BEGIN
INFO:sqlalchemy.engine.base.Engine.0x..70:SELECT emp_empno, emp_ename,
emp_job, emp_mgr, emp_hiredate, emp_sal, emp_comm, emp_deptno
FROM (SELECT emp.empno AS emp_empno, emp.ename AS emp_ename, emp.job
AS emp_job, emp.mgr AS emp_mgr, emp.hiredate AS emp_hiredate, emp.sal
AS emp_sal, emp.comm AS emp_comm, emp.deptno AS emp_deptno,
ROW_NUMBER() OVER (ORDER BY emp.rowid) AS ora_rn
FROM emp
WHERE emp.ename = :emp_ename ORDER BY emp.rowid)
WHERE ora_rn>0 AND ora_rn<=1
INFO:sqlalchemy.engine.base.Engine.0x..70:{'emp_ename': 'SMITH'}
----------------------------------------------------------------------

On 10月9ζ—₯, 午後11:42, Michael Bayer <[EMAIL PROTECTED]> wrote:
>
> I cant really identify what the problem is there.  turning on SQL
> logging might show more about the issue and also id see if it works
> without setting NLS_LANG.


--~--~---------~--~----~------------~-------~--~----~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to