如何使用linux命令行对远程数据库执行“INSERT INTO”查询?

时间:2015-11-19 19:40:53

标签: mysql sql-server linux database bash

我正在尝试在raspbian系统中创建一个代码,使用bash“.sh”scrypt更新存储在我的托管服务器中的数据库mySQL中的值。

这条线不起作用,但我不知道为什么......

mysql -h eliuslab.com -u user -pPassWord -D mydatabase -e "INSERT INTO 'home-IP' ('IP') VALUES ('192.168.1.2')"

输出:

 'ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''home-IP' ('IP') VALUES ('192.168.1.2')' at line 1 '

此查询在GUI mySQL客户端中运行良好,但我想要做的是使用我的“.sh”bash scrypt启动此操作。

非常感谢你:)

1 个答案:

答案 0 :(得分:0)

好的,我得到了解决方案。我在我的mysql数据库中运行你的脚本并得到了同样的错误。这不是脚本的错,但它是一个解析错误。 正确的命令是

mysql -h eliuslab.com -u user -pPassWord -D mydatabase -e "INSERT INTO tablename (column) VALUES ('BLABLASTRING')"

请注意,不需要在表名和列名周围使用引号。引号将它们视为字符串常量而不是容器。