Как написать процедуру для выполнения файла.txt

У меня есть несколько txt файлов в моей локальной системе. Каждый из них содержит запрос создания таблицы. Это огромные таблицы, поэтому у меня есть отдельный файл для каждой таблицы. Мне нужно написать процедуру/функцию, которая будет выполнять каждый из этих.txt файлов и создавать таблицы в табличном пространстве.

Как я могу это сделать? Сервер Oracle11g, и я использую SQL Developer для доступа к нему.

1 ответ

Просто поставьте полный путь к скрипту, которому предшествует @на SQL Developer и выполните его. Ex.

@'C:\script dir\script1.sql'
@'C:\script dir\script2.sql'
@'C:\script dir\script3.sql'

Выделите все строки и нажмите кнопку выполнения. Нет необходимости писать сложную процедуру для доступа к файловой системе и развертывания сценариев. В SQL * Plus вам нужно только вставить каждую строку и нажать "Enter", или поместить все вызовы сценариев в сценарий оболочки и вызвать только один

@'C:\script dir\callAllScripts.sql'

Если бы я абсолютно должен был разработать инструмент автоматического развертывания для системы, я бы сохранил сценарии в локальной FS или в любой общей сетевой папке, к которой имел доступ сервер, и создать цикл на оболочном или пакетном сценариях, вызывающий sqlplus для выполнения сценариев так же, как я описал выше.

licensed under cc by-sa 3.0 with attribution.