Присвойте SQL значение запроса сервера переменной в сценарии оболочки - PullRequest
0 голосов
/ 13 марта 2020

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

Я попытался выполнить что-то подобное ниже.

echo off
status='sqlcmd -S {host} -d {db} -U {user} -P {password} -Q "SELECT CASE WHEN fc.config_val< fc.config_val_dev_mysql AND fc.config_val < fc.config_val_prod_mysql THEN 1 ELSE 0 END AS mssql_status FROM flex_configs fc;"';
echo $status

Но это не работает.

Если статус = 1, тогда я вызову задание ETL в том же сценарии оболочки, если нет, то ничего не сделаю. Пожалуйста, предложите мне ответ, так как я не могу получить этот скрипт.

1 Ответ

0 голосов
/ 14 марта 2020
status=$(sqlcmd -S {host} -d {db} -U {user} -P {password} -Q "SELECT CASE WHEN fc.config_val< fc.config_val_dev_mysql AND fc.config_val < fc.config_val_prod_mysql THEN 1 ELSE 0 END AS mssql_status FROM flex_configs fc;")
echo $status

Вы должны поместить код внутри $(), как $(my code) или `my code`

...