файл сценария db2 sql - PullRequest
       5

файл сценария db2 sql

1 голос
/ 09 июля 2009

У меня есть сценарий оракула, который я пытаюсь преобразовать в действительный синтаксис db2. В этом файле sql у меня есть различные обращения к другим файлам sql, передающим параметр с использованием синтаксиса '@'.

, например

@script1 param1
@script2 param2

Может кто-нибудь помочь мне с действительными эквивалентными утверждениями db2? Есть ли в db2 эквивалентная команда запуска? Можно ли передать параметры в сценарий SQL в DB2?

спасибо,

smauel

Ответы [ 3 ]

7 голосов
/ 09 июля 2009

За вами стоит Процессор командной строки DB2 (CLP).

Если вы хотите выполнить скрипт, вы должны выполнить в CLP:

db2 -vtf script1

-f говорит CLP запустить ввод команд из заданного файла.

Вот полный список параметров .

К сожалению, db2 не поддерживает передачу параметров в скрипт. Вам нужно будет объединить ваши команды db2 -vtf с другими командами сценариев (такими как sed), чтобы сгенерировать сценарии для вас, как в этом примере .

1 голос
/ 21 августа 2012

1) поместите файл filename.sql в SQLLIB / BIN

2) запустить db2cmd

3) выполнить это для подключения к необходимому БД

 db2 connect to *dbname* user *userid* using *password*

4) извините эту команду

 db2 -vtf *filename.sql*

Это должно выполнить операторы sql в файле один за другим. Операторы sql должны заканчиваться точкой с запятой

1 голос
/ 22 января 2010

Существует более простой способ передачи параметров, который нам подходит (он может не работать с (сложными) многострочными SQL-операторами).

Преобразуйте ваш sql-скрипт в скрипт оболочки, добавив 'db2' в начале каждой строки. Чем вы можете использовать стандартный синтаксис замены переменных из вашей оболочки в ваших скриптах.

так вместо

insert ...
update ...

у вас будет

db2 insert ...
db2 update ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...