I tried to reflect an existing oracle database into sqlalchemy metadata:
from sqlalchemy import create_engine
from sqlalchemy import MetaData
from sqlalchemy import Table
db_uri = 'oracle://USER:PASS@MYDBTNSNAME'
engine = create_engine(db_uri)
# create a MetaData instance
metadata = MetaData()
# reflect db schema to MetaData
metadata.reflect(bind=engine)
This returns the following:
SAWarning: Did not recognize type 'BINARY_DOUBLE' of column 'column_1'(coltype, colname))
I have tried to import native types and also the types from dialect oracle using
from sqlalchemy.types import *
from sqlalchemy.dialects.oracle import *
but it seems it does not recognize BINARY_DOUBLE type
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-13-b69d481f6a4e> in <module>()
1 from sqlalchemy.types import *
----> 2 from sqlalchemy.dialects.oracle import *
AttributeError: module 'sqlalchemy.dialects.oracle' has no attribute 'BINARY_DOUBLE'
I am using SQLAlchemy, version '1.2.1'
from sqlalchemy.dialects.oracle.base import ischema_namesandischema_names['BINARY_DOUBLE'] = OracleBinaryDoublethisNullType()after applyingmetadata.reflect()function. I need to map it to something like cx-oracle.readthedocs.io/en/latest/…