Shell Script para conectarse a la base de datos y ejecutar la consulta

Shell Script para conectarse a la base de datos y ejecutar la consulta
#!bin/bash
Query="update table_name set colume ='i' where column_name is NOT NUll"

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

El script anterior no funciona

Respuesta1

La documentación de MySQL es bastante limpia:

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

-eLa opción permite enviar una consulta arbitraria al servidor MySQL.

Observe que no hay espacio entre -py password; esa es una sintaxis intencional de mysqlCLI

Respuesta2

El script anterior no funciona porque la sintaxis del shell distingue entre mayúsculas y minúsculas y usted solía Querydefinir la variable y luego queryexpandirla.

De lo contrario, consulte la respuesta de @Kondybas para conocer la forma correcta de hacerlo.

información relacionada