Oracle
 sql >> база данни >  >> RDS >> Oracle

извличане на дълги необработени данни в променлива clob

Типовете данни LONG и LONG RAW са отхвърлени в полза на CLOB и BLOB след Oracle 8.0 (т.е. преди почти петнадесет години). Основната причина за това превключване е, че с ДЪЛГИТЕ колони е наистина трудно да се работи, а това се удвоява за ДЪЛГИТЕ RAW.

Както вече разбрахте, има ограничение за това, което можем да правим в PL/SQL. Тази граница е 32K. По-големите колони LONG RAW могат да се обработват само в C.

Tom Kyte използва помощна програма за разтоварване на дълги необработени колони в плосък файл, който след това може да бъде зареден в модерни LOB колони чрез SQL Loader. Тази помощна програма изглежда не е налична (не е в списъка с /~tkyte файлове в неговия блог).

Fangxin Lou обаче е написал версия на друга помощна програма Tom Kyte, която той нарича ociuldr и който очевидно се справя с Long Raw. Можете да изтеглите източника от неговия уеб сайт. Научете повече .

NB Не съм пробвал ociuldr за себе си (не съм попадал на Long Raw от миналото хилядолетие) и не го гарантирам по никакъв начин. Но изглежда, че това е единственото решение, което интернет предлага в момента. Така че ви предлагам да опитате, освен ако нямате добри OCI умения и можете да напишете своя собствена реализация.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01652:не може да се разшири temp сегмент със 128 в пространството за таблици СИСТЕМА:Как да се разшири?

  2. Как да използвам Hibernate Session.doWork(...) за точки за запис/вложени транзакции?

  3. Повтаряне на редове въз основа на стойността на колоната във всеки ред

  4. PL/SQL - Как да използваме масив в клауза IN

  5. Поставете китайски символи в Oracle DB