sql >> Base de Datos >  >> RDS >> Mysql

Insertar en mysql desde el script Bash

Puede pasar los comandos en un aquí-documento , así:

mysql --user=$DB_USER --password=$DB_PASSWD $DB_NAME << EOF
INSERT INTO $TABLE (\`id\`, \`day\`, \`time\`, \`rank\`) VALUES (NULL, "$day", "$time", "$rank");
EOF

Observe que el ` necesita ser escapado. También eliminé el QUIT comando, ya que es innecesario (buen consejo @Ven, gracias).

En realidad, dado que esos nombres de columna no contienen símbolos especiales, en realidad no es necesario que los entrecomillas, y escriba la consulta INSERTAR un poco más simple, así:

mysql --user=$DB_USER --password=$DB_PASSWD $DB_NAME << EOF
INSERT INTO $TABLE (id, day, time, rank) VALUES (NULL, "$day", "$time", "$rank");
EOF