sql >> Database >  >> RDS >> Oracle

ophalen van lange onbewerkte gegevens in clob-variabele

De gegevenstypen LONG en LONG RAW zijn sinds Oracle 8.0 (d.w.z. bijna vijftien jaar geleden) afgeschaft ten gunste van CLOB en BLOB. De belangrijkste reden voor deze overstap is dat LONG kolommen erg moeilijk zijn om mee te werken, en dat geldt dubbel voor LONG RAW.

Zoals je al hebt ontdekt, is er een limiet aan wat we kunnen doen in PL/SQL. Die limiet is 32K. Grotere LONG RAW-kolommen kunnen alleen in C worden verwerkt.

Tom Kyte hostte vroeger een hulpprogramma voor het ontladen van Long Raw-kolommen naar een plat bestand, dat vervolgens via SQL Loader in moderne LOB-kolommen kon worden geladen. Dit hulpprogramma lijkt niet beschikbaar te zijn (het staat niet in de lijst met /~tkyte-bestanden op zijn blog).

Fangxin Lou heeft echter een versie geschreven van een ander Tom Kyte-hulpprogramma, dat hij ociuldr noemt. en die blijkbaar Long Raw behandelt. U kunt de bron downloaden van zijn website. Meer informatie .

NB Ik heb ociuldr niet geprobeerd voor mezelf (ik ben sinds het laatste millennium geen Long Raw meer tegengekomen), en ik sta er op geen enkele manier voor in. Maar het lijkt de enige oplossing te zijn die het internet op dit moment biedt. Dus ik raad je aan het te proberen, tenzij je goede OCI-vaardigheden hebt en je eigen implementatie kunt schrijven.




  1. Hoe verwijder ik alle niet-alfabetische tekens uit de tekenreeks in SQL Server?

  2. MySQL:ongeldige GIS-gegevens verstrekt aan functie st_geometryfromtext

  3. Zijn drop-down geselecteerde velden kwetsbaar voor elke vorm van injectie?

  4. Probleem met het maken van een .MDF-bestand vanuit Visual Studio 2010