Типовете данни 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 умения и можете да напишете своя собствена реализация.