RAW type improperly defined as a LOB for oracle dialect

Issue #2220 resolved
Former user created an issue

It appears that in changeset 5363 there was some changes that converted the RAW definition in the oracle dialect from a RAW to Binary (and then later to a LargeBinary).

Specifically: 1.130 -class OracleRaw(OracleBinary): 1.131 - def get_col_spec(self): 1.132 - return "RAW(%(length)s)" % {'length' : self.length} 1.133 +class OracleRaw(sqltypes.Binary): 1.134 + pass

In Oracle, a RAW is not a LOB it has different properties (like a RAW can have unique and primary key definitions applied to it).

I would be happy to check in a patch, that essentially reverses the above, but don't know if there is a reason eliminating the Binary type.

Comments (4)

  1. Former user Account Deleted

    It looks like in oracle/base.py the following:

    class RAW(sqltypes.LargeBinary): pass

    should be:

    class RAW(sqltypes.LargeBinary): visit_name = 'RAW'

  2. Log in to comment