Перенос данных из таблицы Oracle в текстовый файл - PullRequest
2 голосов
/ 24 марта 2012

Меня интересует, возможно ли с помощью блока PL / SQL перенести содержимое таблицы Oracle в текстовый файл на жестком диске. Мне нужен блок PL / SQL, который может загрузить содержимое таблицы, которая будет использоваться для хранения данных журнала в текстовом файле.

Привет

Ответы [ 2 ]

8 голосов
/ 24 марта 2012

вы можете использовать пакет UTL_file для этого ..

вы можете попробовать ниже тип блока -

declare 
p_file util_file.file_type;
l_table <your_table_name>.ROWTYPE;
l_delimited varchar2(1) := '|';
begin
p_file:= utl_file.fopen('<file_path>','<file_name>','W');
for l_table in (select * from <your_table_name>) loop
utl_file.putline(p_file,l_table.col1||l_delimited||l_table.col2||l_delimited||l_table.col3||l_delimited||l_table.col4||l_delimited <continue with column list .........> ||chr(10));
end loop;    
utl_file.fclose_all();
end;
4 голосов
/ 25 марта 2012

Пратик Гарг - хороший ответ.
Но вы можете также рассмотреть вопрос об использовании ВНЕШНЕГО СТОЛА .
По сути, это таблица, которая сопоставлена ​​с файлом.Таким образом, каждая строка, вставленная в таблицу, автоматически записывается в файл.
вы можете увидеть пример здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...