Как бы вы создали установку установки, которая работает с несколькими схемами, принимая во внимание последнюю версию обновлений базы данных? В идеале: обновите отдельный файл с новым номером версии, затем отправьте администраторам баз данных архив, содержащий все необходимое для обновления базы данных.
Вот структура каталогов:
| install.sql
| install.bat
|
\---DATABASE_1.3.4.0
| README.txt
|
\---SCHEMA_01
| install.sql
| SCM1_VIEW_NAME_01_VW.vw
| SCM1_VIEW_NAME_02_VW.vw
| SCM1_PACKAGE_01_PKG.pkb
| SCM1_PACKAGE_01_PKG.pks
|
\---SCHEMA_02
install.sql
SCM2_VIEW_NAME_01_VW.vw
SCM2_VIEW_NAME_02_VW.vw
SCM2_PACKAGE_01_PKG.pkb
SCM2_PACKAGE_01_PKG.pks
Следующий код (очищенный и обрезанный для краткости и безопасности) находится в install.sql :
ACCEPT tns
ACCEPT schemaUsername
ACCEPT schemaPassword
CONNECT &&schemaUsername/&&schemaPassword@&&tns
@@install.sql
/
Следующий код находится в install.bat :
@echo off
sqlplus /nolog @install.sql
pause
Существует несколько схем, не все из которых требуют обновления каждый раз. Те, кому не нужны обновления, не будут создавать каталоги.
Я хотел бы создать два файла:
Эти два (созданных вручную) файла будут использоваться install.sql , чтобы определить, какую версию скриптов следует запускать.
Например:
version.txt
1.3.4.0
schemas.txt
SCHEMA_01
SCHEMA_02
Что я действительно хотел бы знать, так это как бы вы прочитали эти текстовые файлы из install.sql для запуска соответствующих скриптов установки? (Без PL / SQL; приемлемы другие соглашения, специфичные для Oracle.)
Все идеи приветствуются; заранее большое спасибо.