Выполнение SQL запросов с использованием Shell Script и получение вывода в формате CSV - PullRequest
0 голосов
/ 06 января 2020

Я хочу автоматизировать файл SQL, который содержит несколько запросов SQL, используя сценарий оболочки, и в то же время получить их вывод в файле формата .csv.

Также есть подвох! Эти запросы будут иметь некоторую переменную часть, т.е. они будут меняться и будут зависеть от пользовательского ввода

Например:

SELECT NAME, CITY, ADDRESS FROM DATA WHERE COUNTRY = 'USA'

Здесь я не хочу, чтобы это всегда было США. Как я могу предоставить страну как пользовательский ввод в Shell Script?

1 Ответ

0 голосов
/ 07 января 2020

Вы можете попробовать Oracle SQL* Плюс переменные замещения.

SQL скрипт "demo. sql" вот так

SPOOL some.csv APPEND
set colsep ','
SELECT NAME, CITY, ADDRESS FROM DATA WHERE COUNTRY = '&Country';
SPOOL OFF

и запустить скрипт вот так

sqlplus -S username/pass @demo.sql

вам будет предложено ввести «Страна»

Enter value for Country:

, затем ввести что-то и нажать Enter.
SQL был выполнен и получит файл some.csv отдельно через запятую.

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