[ОТВЕТИТЬ]
Опции темы
14.11.2013 14:29  
whitewizard
Пфффф
Код:
exec readfile('c:\!', 'imp.txt');
в imp.txt
Код:
WI,00000012
WO,00000123
 
14.11.2013 14:46  
OlegON
сделай нормальную директорию, например, test и
Код:
exec readfile('c:\test\', 'imp.txt');
 
14.11.2013 14:56  
bayan
Код:
create directory TEMP_DIR as 'u/oracle/tmp/;
grant read on directory TEMP_DIR to bayser;
Код:
declare 
cn varchar2(25);
v_file UTL_FILE.FILE_TYPE;
BEGIN
v_file := UTL_FILE.FOPEN('TEMP_DIR','111.txt','r');
LOOP
        begin
        UTL_FILE.GET_LINE(v_file,cn); 
        dbms_output.put_line(''||cn||'');
        exception
        WHEN NO_DATA_FOUND THEN EXIT;
        end;
        end loop;
UTL_FILE.FCLOSE(v_file);
END;
всё ок работает
 
14.11.2013 15:06  
OlegON
кстати, да, exception можно не перехватывать и посмотреть ошибку поподробнее...
 
14.11.2013 15:23  
whitewizard
Цитата:
Сообщение от bayan
Код:
create directory TEMP_DIR as 'u/oracle/tmp/;
grant read on directory TEMP_DIR to bayser;
Код:
declare 
cn varchar2(25);
v_file UTL_FILE.FILE_TYPE;
BEGIN
v_file := UTL_FILE.FOPEN('TEMP_DIR','111.txt','r');
LOOP
        begin
        UTL_FILE.GET_LINE(v_file,cn); 
        dbms_output.put_line(''||cn||'');
        exception
        WHEN NO_DATA_FOUND THEN EXIT;
        end;
        end loop;
UTL_FILE.FCLOSE(v_file);
END;
всё ок работает
Это то здорово, но как мне TEMP_DIR в процедуру передать?
 
14.11.2013 15:31  
OlegON
Вот я лажанулся-то, отвлекают сильно. Но TEMP_DIR, это не директория, а DIRECTORY оракловая. Т.е. придется с каким-то фиксированным набором работать, создав их заранее, либо двинуться в сторону блокировок приложения и создавать/убивать директорию на месте.
 
14.11.2013 15:35  
whitewizard
Иначе никак файл не почитать? Только вот так через анус?
 
14.11.2013 15:37  
OlegON
Почему анус? Сделай общую директорию на всех?
 
14.11.2013 15:46  
whitewizard
Вот совсем ничего на ночь глядя не понял.
Скажи понятным языком, пожалуйста.
 
14.11.2013 16:02  
OlegON
Давай, чтобы я на твою ночь глядя все варианты не перебирал, ты скажешь, почему тебе в процедуру надо передавать директорию?
 
 


Опции темы



Часовой пояс GMT +3, время: 13:37.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.