SQLAlchemy不反映oracle表

时间:2018-11-22 19:49:05

标签: python python-3.x oracle sqlalchemy

我正在尝试使用SQLALchemy最新版本将Oracle 11g中的表反映到python3.7中

我已经尝试了这两个类似的答案

SqlAlchemy Reflection of Oracle Table Not Owned

和 这里 SQLAlchemy MetaData.reflect not finding tables in Oracle db

但是我仍然收到错误消息:

sqlalchemy.exc.NoSuchTableError:V_TBL_RECEIPT_TRANSACTIONS

这是我正在使用的代码

    cstring = sqlalchemy.engine.url.URL('oracle',user,password,hostname,port=port,database=sid)

engine= create_engine(cstring, convert_unicode=False, pool_recycle=10, 
pool_size=50,echo='debug')
#metadata.reflect(bind=engine, schema='ONESACS')
rtransact =Table('V_TBL_RECEIPT_TRANSACTIONS',metadata,autoload=True,autoload_with=engine, schema='ONESACS')

有趣的是,如果将原始SQL传递给游标,我可以很好地读取表

result= engine.execute("SELECT * "
                       "FROM V_TBL_RECEIPT_TRANSACTIONS "
                   "WHERE sbg_id='SPS'")

有什么想法为什么不起作用?

0 个答案:

没有答案