Skip to content
Advertisement

How to call DBMS_CRYPTO.HASH when inserting a CLOB into Oracle with Python?

I’m storing CLOBs in Oracle. To speed up finding identical CLOBs, I’d like to introduce a hash value of the CLOBs. What I tried so far is

  1. INSERT the CLOB
  2. UPDATE the hash value based on the stored clob.

How can this be done in one operation instead of two?

This doesn’t work:

(Oracle 12.2 using Python and cx_Oracle 6.3)

Advertisement

Answer

This works for me, admittedly with Oracle 11g XE (and cx_Oracle 6.3.1):

I couldn’t reproduce your error ORA-01465: invalid hex number with your doesn’t-work code: my 11g XE database gave me the error ORA-24816: Expanded non LONG bind data supplied after actual LONG or LOB column instead.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement