sql >> Database teknologi >  >> RDS >> Oracle

Indsættelse af en CLOB ved hjælp af cx_Oracle

Der er et par mulige løsninger:

  1. Opgrader cx_Oracle. Jeg er ikke sikker på, hvilken version du bruger, men jeg bruger python 2.7.2 med cx_Oracle 5.1, og jeg får ingen fejl, når jeg indsætter 150.000 tegn i en CLOB-kolonne uden overhovedet at bruge setinputsizes.
  2. Da setinputsizes gælder for hver efterfølgende markørbrug, skal du bare ændre det mellem disse forskellige cursor.execute-sætninger.

f.eks.:

cursor = connection.cursor()
cursor.setinputsizes(FOO=None, BAR=None)
cursor.execute("INSERT INTO myTable (FOO, BAR) VALUES (:FOO, :BAR)", 
FOO=val1,  BAR=val2)
cursor.setinputsizes(HERP = cx_Oracle.CLOB)
cursor.execute("INSERT INTO myTable2 (HERP) VALUES (:HERP)", HERP=val3)



  1. Oprettelse af en webapp fra bunden ved hjælp af Python Flask og MySQL:Del 2

  2. MYSQL Workbench - FEJL:Fejl 1215:Kan ikke tilføje fremmednøglebegrænsning

  3. MySQL indsæt kun, hvis en betingelse er sand

  4. Sådan beregnes flere glidende gennemsnit i MySQL