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

hente lange rådata til clob-variabel

LONG og LONG RAW datatyperne er blevet forældet til fordel for CLOB og BLOB siden Oracle 8.0 (dvs. for næsten femten år siden). Den primære årsag til dette skift er, at LONG kolonner er virkelig svære at arbejde med, og det er dobbelt for LONG RAW.

Som du allerede har opdaget, er der en grænse for, hvad vi kan gøre i PL/SQL. Den grænse er 32K. Større LONG RAW kolonner kan kun håndteres i C.

Tom Kyte plejede at være vært for et hjælpeprogram til at fjerne Long Raw-kolonner til en flad fil, som derefter kunne indlæses til moderne LOB-kolonner gennem SQL Loader. Dette hjælpeprogram ser ud til at være utilgængeligt (det er ikke på listen over /~tkyte-filer på hans blog).

Fangxin Lou har dog skrevet en version af et andet Tom Kyte-værktøj, som han kaldes ociuldr og som tilsyneladende håndterer Long Raw. Du kan downloade kilden fra hans hjemmeside. Få mere at vide .

NB Jeg har ikke prøvet ociuldr for mig selv (jeg er ikke stødt på en Long Raw siden det sidste årtusinde), og jeg garanterer det ikke på nogen som helst måde. Men det ser ud til at være den eneste løsning, internettet tilbyder lige nu. Så jeg foreslår, at du prøver det, medmindre du har gode OCI-færdigheder og kan skrive din egen implementering.




  1. Udfør forespørgsel baseret på den JSON, der er gemt i kolonnen

  2. Sådan får du kategorier og underkategorier Query Builder i Laravel

  3. Gør WHERE ID IN med en underforespørgsel, som returnerer en streng af ID'er

  4. Python+MySQL - Bulk Insert