Запустить скрипт 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 никогда не будут выполнены.