Nie sądzę, że jest to możliwe w przypadku SQL Developer (ale wtedy nie używam go zbyt często).
Klient SQL, którego używam — SQL Workbench/J — może to zrobić.
Istnieje kilka sposobów na wyeksportowanie tych danych.
Wygeneruj zastrzeżony skrypt
Może utworzyć skrypt SQL, który używa specjalnej (specyficznej dla narzędzia) notacji do odwoływania się do pliku zewnętrznego, na przykład:
INSERT INTO images
(name, data)
VALUES
('foobar', {$blobfile='blob_r1_c2.data'});
Powyższą instrukcję można ponownie wykonać tylko w programie SQL Workbench. Nie jest kompatybilny z żadnym innym klientem SQL.
Użyj utl_raw
Inną alternatywą jest użycie „dosłownego kropelka”, ale ze względu na ograniczenie Oracle do 4000 bajtów na literał znakowy, działa to tylko w przypadku naprawdę małe wartości blobów:
INSERT INTO images
(name, data)
VALUES
('foobar', to_blob(utl_raw.cast_to_raw('......')));
gdzie literał znakowy dla cast_to_raw
wywołanie zawierałoby wartości szesnastkowe obiektu BLOB. Ponieważ wymaga to 2 znaków na "bajt obiektu BLOB", nie można za jego pomocą obsługiwać obiektów BLOB większych niż 2000 bajtów. Ale ta składnia zadziałałaby dla prawie wszystkich narzędzi Oracle SQL (jeśli potrafią obsługiwać skrypty z bardzo długimi liniami).
Plik wejściowy programu ładującego SQL*
Trzecią alternatywą jest wyeksportowanie danych do pliku tekstowego, który można zaimportować za pomocą SQL*Loader:
Plik tekstowy zawierałby coś takiego:
NAME DATAfoobar blob_r1_c2.data
Razem z następującym plikiem kontrolnym SQL*Loader:
OPCJE (skip=1)ZAŁADUJ ZESTAW ZNAKÓW DANYCH 'WE8ISO8859P15'PRZEPISY 'images.txt'DOŁĄCZ DO TABELI IMAGEFIELDS ZAKOŃCZONE PRZEZ '\t' KOŃCOWE LICZBÓW NULL(NAZWA, WYPEŁNIACZ lob_file_data, DATA LOBFILE(lob_file_Dpre )>Można go załadować za pomocą SQL*Loader i dlatego nie wymaga SQL Workbench do importowania danych.
Więcej szczegółów znajduje się w instrukcji
Edytuj
Jak zauważył Alex w swoim komentarzu, możesz również użyć eksportu DataPump - ale to wymaga dostępu do systemu plików na serwerze. Wszystkie powyższe rozwiązania przechowują dane na kliencie.