PeekabooAV icon indicating copy to clipboard operation
PeekabooAV copied to clipboard

Oracle database backend

Open Jack28 opened this issue 5 years ago • 0 comments

SQLAlchemy has support for Oracle but our current test for _meta table and schema is not compatible.

oracle+cx_oracle://

First the test to check if schema exists leads to a crash because cx_oracle doesn't have the function has_table https://github.com/scVENUS/PeekabooAV/blob/18d0ac2148d76aaf1dfe659c1a11cf74021ebae9/peekaboo/db.py#L422

Secondly the auto_increment of primary keys needs to be realised by additional Sequences:

from sqlalchemy.schema import Sequence
...
    id = Column(Integer, Sequence('id_sample'), primary_key=True)
...
    id = Column(Integer, Sequence('id_analysis'), primary_key=True)

https://docs.sqlalchemy.org/en/13/dialects/oracle.html#auto-increment-behavior

After that everything seems to working as expected.

Jack28 avatar Aug 22 '19 11:08 Jack28