Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.145.2.184] |
|
Данный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ. |
Сообщ.
#1
,
|
|
|
У меня есть куча sql скриптов для оракла. Писал их очень ленивый человек.
Хочу их довести до ума... Вопрос: Как из SQL проверить наличие файла на машине с которой я выполняю SQL запрос. В скриптах вызываются внешние скрипты, надо выходить если по указанному пути они не находятся... |
Сообщ.
#2
,
|
|
|
Из SQL ИМХО - никак. Если из PL/SQL-процедуры, то:
Можно ли читать/писать в файлы из PL/SQL? Начиная с версии Oracle 7.3, в состав входит пакет UTL_FILE, позволяющий читать и писать в файлы операционной системы. Каталог с файлами должен быть объявлен в файле INIT.ORA (параметр UTL_FILE_DIR=...). В предыдущих версиях единственный способ записи в файлы - использование пакета DBMS_OUTPUT совместно с командой SQL*Plus SPOOL. Пример использования: DECLARE fileHandler UTL_FILE.FILE_TYPE; BEGIN fileHandler := UTL_FILE.FOPEN('/tmp', 'myfile', 'w'); UTL_FILE.PUTF(fileHandler, 'Look ma, I''m writing to a file!!!\n'); UTL_FILE.FCLOSE(fileHandler); EXCEPTION WHEN utl_file.invalid_path THEN raise_application_error(-20000, 'ERROR: Invalid path for file or path not in INIT.ORA.'); END; (Взято из хелпа - сам не проверял). |
Сообщ.
#3
,
|
|
|
вероятно возможно udf сделать которая проверит сушествование файла
|