2012-09-06 2 views
1

Есть ли способ генерировать вывод сценария .sql в таблицу?Вывод Oracle Spool Script в таблицу

Обходное решение, которое я могу придумать, - это связать с файловой системой динамическое создание скрипта вставки-заявления с обратной связью, а затем запустить его против вашей схемы.

Однако, я хотел бы знать, если есть лучшее решение, чтобы намотать непосредственно в таблицу или таблицу системы, которая уже существует и сохраняет эту информацию (например, сценарий FilePath, дата выполнения, результаты выполнения; 1 row inserted, commit и т.д. ..

Благодаря

+0

Почему бы не использовать PL/SQL? –

+0

Это лучший способ провести аудит любой активности с помощью сервера, включив, например, Аудит. Вы не можете напрямую добавить в таблицу sql * plus сообщения в таблицу. –

+0

@ user1651063 Как долго вы намерены сохранить эти данные, и как вы будете манипулировать им после этого? Как сказал Роберт, PLSQL может быть лучшим решением. Или я предлагаю использовать временные таблицы. –

ответ

1

Запись файла золотника к каталогу, в котором вы определили каталог Oracle. Напишите процедуру, которая принимает имя файла и имя каталога в качестве входных данных и записывает файл в виде CLOB в Таблица

spool test.txt 

your code 

spool off 

exec write_spool_file_to_database_proc('test.txt','YOURDIR'); 

Посмотрите на это, как записать файл в столбец CLOB таблицы.

http://www.roeptoeter.nl/?p=254

+0

+1 для ссылки на код. Как мысленный эксперимент, предположим, что база данных опускается. Как и где будут регистрироваться результирующие ошибки соединения? –

+0

Он по-прежнему будет находиться в файловой системе ;-) –

+0

Я понимаю, что некоторые из них могут не поделиться моим представлением, но это одна из причин, по которой я предпочитаю записывать в плоские файлы вместо того, чтобы пытаться войти в базу данных. В необычных или ненормальных условиях, которые являются одной из основных причин, по которым я хочу что-то регистрировать, вы должны постоянно искать соответствующий файл (и надеемся, что он не был перезаписан последующими действиями и т. Д., Бла). Я нашел, что проще просто добавить текст в плоский файл. –

 Смежные вопросы

  • Нет связанных вопросов^_^