首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用变量创建MySQL数据库

问使用变量创建MySQL数据库
EN

Stack Overflow用户
提问于 2011-09-19 16:20:35
回答 1查看 2.2K关注 0票数 6

我想做一些类似以下的事情

CREATE DATABASE IF NOT EXISTS @database_name;

从the mysql syntax for prepared statements的阅读来看,它们似乎不能用来创建数据库,否则这样的东西就可以了。

​

代码语言:javascript
复制
SET @s = CONCAT('CREATE DATABASE IF NOT EXISTS ',@database_name);
PREPARE stmt FROM @s;
EXECUTE stmt;

​

理想情况下,我希望它是来自shell脚本的I can run from a .sql file

代码语言:javascript
复制
#!/bin/bash

MYSQL="mysql"
`${MYSQL} --version >& /dev/null`
if [ $? != 0 ]; then
    MYSQL="mysql5"
    `${MYSQL} --version > /dev/null`
    if [ $? != 0 ]; then
        echo "Can't find mysql binary?"
        exit 1
    fi
fi

 ${MYSQL} -u root --password=###### -e "set @database_name:='ben_search';source CreateSkeleton.sql;"

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2014-02-27 20:40:07

您只需将CREATE DATABASE语句从您的SQL文件中删除,并从您的shell脚本发出它:

代码语言:javascript
复制
#!/bin/bash
dbname='my_db'
mysql -e "CREATE DATABASE $dbname"
mysql $dbname < /path/to/file/CreateSkeleton.sql
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7468115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档