码迷,mamicode.com
首页 > 数据库 > 详细

MySQL concat用法举例

时间:2018-08-02 16:03:51      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:close   图片   生效   http   alt   res   form   表示   code   

concat配合information_schema的应用

 

1    concat的一般用法主要是用于拼接

示例:

执行语句 SELECT CONCAT(‘M‘,‘y‘,‘S‘,‘Q‘,‘L‘) 可以达到如下效果

技术分享图片

 

 2  在写SQL备份语句时,假定要导出三张表分别为world下的

技术分享图片

之前我们写备份语句要写三条 分别要导出这三张表;语句分别为

技术分享图片
mysqldump -uroot -p123 world city >/tmp/world_city.sql
mysqldump -uroot -p123 world country >/tmp/world_country.sql
mysqldump -uroot -p123 world countrylanguage >/tmp/world_countrylanguage.sql
View Code

 

但是这是特定语句,如果该库下有3000张表呢,30000张呢;为此这种导出方式不是最好的方式;为此我们可以将concat与information_schema联系起来

技术分享图片
SELECT CONCAT(mysqldump -uroot -p123 ,table_schema, ,table_name, >/tmp/,table_schema,_,table_name,.sql) FROM 
information_schema.tables WHERE table_schema=world;
View Code

请注意期中的一些细节:

‘ ‘ 引号中间有空格的话是表示空格,table_schema表示数据库名

table_name表示表名;这些属性在information_schema都可以找到

这是初始的写法;执行效果如下

技术分享图片

 

 

最后处理的方式:语句写出来了,达到我们要的效果了;如果将来这个库当中有其他表就会新增到concat的输出语句

技术分享图片

 

以上还不是最佳的效果

我们最好是将输出的语句导出到指定文件

第一次执行会报错;

技术分享图片

处理方式如下:在/etc/my.cnf下新增语句 指定安全路径

secure-file-priv=/tmp 并重启数据库后生效/etc/init.d/mysqld restart

技术分享图片

 

 重新执行语句不再报错

技术分享图片

 

 

在终端查看效果如下:

技术分享图片

 

该脚本可以直接用sh 执行 执行完就会备份这4个表了

MySQL concat用法举例

标签:close   图片   生效   http   alt   res   form   表示   code   

原文地址:https://www.cnblogs.com/nodchen/p/9407210.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!