mysql - 使用参数在 bash 中执行 .sql 文件

标签 mysql sql linux bash shell

我想在 bash 文件中执行一个 .sql 文件,但我需要将参数从 bash 文件传递​​给 .sql。我认为这是一个简单的解决方案,但我想不通。

这是我目前所拥有的:

.SQL 文件

SET @columnValue = &1;
UPDATE tblTest SET Description = @columnValue;

Bash 文件

#!/bin/bash
columnValue=$1
mysql -uroot -ppassword testDB < SQLscript.sql $columnValue

shell

sh myBashFile.sh "testColumnValue"

谁能告诉我我做错了什么?

最佳答案

您需要先设置 SQL 参数,然后加载您的 .sql 文件。

在您的 bash 脚本中,您可以使用带有 -e 选项的 mysql 来执行 SQL 语句。然后必须使用相同的方法告诉 mysql 加载文件而不是使用 bash 读取它。

参见 this example script .

如果您只想执行单个语句,请参阅 this question .

关于mysql - 使用参数在 bash 中执行 .sql 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26377439/

相关文章:

php - 将文本存储到数据库中并使用不同的 CSS 类发布

mysql - mysql 中的自增主键与删除

Mysql查询连接表上日期之间的数据

linux - curl chunky 解析器错误

c - 我们如何在 C 中编译内核代码?

linux - Jmeter TCP Raspberry Pi 缓存

mysql - 如何在表中搜索多行或从串联值中搜索?

mysql - 这个查询应该做什么? (为什么会失败?)

sql - 如何在具有varchar类型列的表中添加一行,一个带引号的单词?

mysql - 忽略子字符串匹配的最高值的列