Запустить скрипт SQL с помощью Rocket Universe из командной строки AIX (uvsh)

Надеюсь, это простой вопрос. Я хочу написать сценарий оболочки, который вызывает сценарий SQL для выполнения некоторых запросов в базе данных Rocket UNIVERSE. Я делаю это из командной строки сервера (на той же машине, где находится база данных).

В SQLSERVER я мог бы сделать что-то вроде следующего:

sqlcmd -S myServer\instanceName -i C:\myScript.sql

В Oracle, как это:

SQL>@/dir/test.sql

В УФ я не могу понять это:

uvsh ??? some.sql file

Так что в файле test.sql у меня может быть что-то вроде следующего:

"SELECT ID, COL1, COL2 FROM PRODUCT WHERE @ID=91;"
"SELECT ID, COL1, COL2 FROM PRODUCT WHERE @ID=92;"
"SELECT ID, COL1, COL2 FROM PRODUCT WHERE @ID=93;"

Так можно ли это сделать или я поступаю неправильно? Может быть, другой метод более оптимален? -- Спасибо!

1 ответ

Вы можете отправить список команд процессу UniVerse с помощью следующей команды.

C:\U2\UV\HS.SALES>type test.sql | ..\bin\uv

Вам не понадобится "" "вокруг каждого утверждения, которое вы описали.

Для учетной записи HS.SALES должны работать следующие команды SQL:

SELECT @ID, FNAME, LNAME FROM CUSTOMER WHERE @ID='2';
SELECT @ID, FNAME, LNAME FROM CUSTOMER WHERE @ID='3';
SELECT @ID, FNAME, LNAME FROM CUSTOMER WHERE @ID='4';

Обратите внимание, что это может не делать то, что вы хотите, это будет отображать результаты на стандартный вывод. Также следует соблюдать осторожность при отправке команд в UniVerse таким образом. Если все лицензии UniVerse используются, команда uv не будет выполнена, и команды SQL никогда не будут выполнены.

Другие вопросы по тегам