我有一堆mysql脚本使用 name1 作为数据库名称,并使用我的数据填充该数据库。但是,我希望能够选择数据库的名称,而不是始终在我的sql脚本中将其命名为 name1 。
我已经有了一个包装器shell脚本,它接受了我的数据文件的路径,现在我希望它也可以使用数据库的名称。
在我的shell脚本中,我指定:
DATABASE_NAME=$2
我的mysql脚本顶部有什么方法可以使用$ DATABASE_NAME吗?所以在mysql脚本中,它将是:
USE DATABASE_NAME;
而不是我现在所拥有的:
USE name1;
答案 0 :(得分:1)
您可以使用mysql -e
执行代码:
mysql -e "USE ${DATABASENAME}; Some sql"
这样任何替换都有效。
您可以选择将临时sql文件或管道代码写入mysql,在解析该文件时只需替换${DATABASENAME}
即可。 (-e
选项是最透明和最简单的)