首页 > 数据库技术 > 详细

MySQL concat用法举例

时间:2018-08-02 15:28:38      阅读:192      评论:0      收藏:0      [点我收藏+]

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用法举例

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!