Скрипт оболочки для подключения к базе данных и выполнения запроса

Скрипт оболочки для подключения к базе данных и выполнения запроса
#!bin/bash
Query="update table_name set colume ='i' where column_name is NOT NUll"

mysql -u username -p password mysql  <<EOF
$query;
EOF

Скрипт выше не работает

решение1

Документация по Mysql довольно понятна:

#!bin/bash
query="update table_name set colume ='i' where column_name is NOT NUll"
mysql -u username -ppassword mysql -e "$query";

-eопция позволяет отправить произвольный запрос на сервер MySQL.

-pОбратите внимание, что между and нет пробела password— это намеренный синтаксис mysqlCLI.

решение2

Приведенный выше скрипт не работает, поскольку синтаксис оболочки чувствителен к регистру, а вы сначала Queryопределили переменную, а затем queryрасширили ее.

В противном случае см. ответ @Kondybas, чтобы узнать, как это сделать правильно.

Связанный контент