Я хочу вставить миллионы записей в файл с использованием oracle и без использования кода цикла или java.Вставка миллиона записей в файл
во время просмотра Я нашел что-то как util_file в oracle, который используется для записи строк в файл, но не смог его использовать. может кто-то, пожалуйста, помогите мне в понимании или написании кода для записи набора результатов, возвращаемого выборочным запросом в файл, или даже процедура будет работать.
Я попытался ниже процедуру он успешно работать, но оленья кожа создать файл с данными
create or replace procedure familydetails
(p_file_dir IN varchar2, p_filename IN varchar2)
IS v_filehandle utl_file.file_type;
cursor family Is
select * from fmly_detl
begin
v_filehandle :=utl_file.fopen('C:\tempfolder','sqltest.txt','W');
utl_file.new_line(v_filehandle);
for fmly IN fmly_detl LOOP
utl_file.putf(v_filehandle,'family %s details:s\n',fmly.last_name,fmly.first_name,fmly.indv_id);
end loop;
utl_file.put_line(v_filehandle,'END OF REPORT');
UTL_FILE.fclose(v_filehandle);
end familydetails;
Что возможная причина вы могли бы иметь для запрещая использование петель? Если вы хотите записать в файл, вам потребуется процедурный код. В процедурном коде используются циклы. –
Я не хочу писать цикл, потому что запрос select будет возвращать более 10 миллионов записей, и я хочу сделать процесс быстрым, если я напишу цикл, тогда вам придется повторять все 10 миллионов + записи по одному и вставлять в файл, и это я первый раз работаю с процедурами, поэтому я не уверен, как они работают извините, но, по моему пониманию, я думал, что производительность процедур будет быстрой по сравнению с циклом sql, чтобы записать его в файл, пожалуйста, исправьте меня, если я ошибаюсь – user3124277
Почему вы не смогли использовать 'utl_file'? Если у вас есть определенная проблема с кодом, который вы написали, используя это, добавьте свой код и ошибки в вопрос. Как и где вы будете ссылаться на этот процесс? Будет ли файл находиться на сервере или на клиенте? В каком формате будут находиться данные? –