MySQL concat用法举例
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
但是这是特定语句,如果该库下有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';
请注意期中的一些细节:
' ' 引号中间有空格的话是表示空格,table_schema表示数据库名
table_name表示表名;这些属性在information_schema都可以找到
这是初始的写法;执行效果如下

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

以上还不是最佳的效果
我们最好是将输出的语句导出到指定文件
第一次执行会报错;

处理方式如下:在/etc/my.cnf下新增语句 指定安全路径
secure-file-priv=/tmp 并重启数据库后生效/etc/init.d/mysqld restart

重新执行语句不再报错

在终端查看效果如下:

该脚本可以直接用sh 执行 执行完就会备份这4个表了
新的示例1:创建world下所有表的备份表
USE world
-- 给world数据下每个表创建备份表
SHOW TABLES; -- 原先写法
CREATE TABLE nod_bak LIKE nod;
USE world
SHOW TABLES;
DROP TABLE nod_bak -- 使用concat
SELECT CONCAT('create table ',table_name,'_bak like ',table_name,';') FROM information_schema.tables
WHERE table_schema='world'
INTO OUTFILE '/tmp/world_bak.sql'
新的示例2 :删除world下所有的bak后缀的表
SELECT CONCAT('drop table ',table_name,'_bak',';') FROM information_schema.`TABLES`
WHERE table_schema='world'
INTO OUTFILE '/tmp/del_bak.sql';
关于oracle 和concat有关的内容
https://www.cnblogs.com/nodchen/p/10036189.html
MySQL concat用法举例的更多相关文章
- ThinkPHP第十一天(关联模型使用,独立分组配置,MySQL concat用法)
1.关联模型的使用 定义方式:新建一个类文件UserRelationModel.class.php Class UserRelationModel extends RelationModel{ pro ...
- mysql CONCAT用法
1.全表查询 SELECT * FROM `wh_statistics_service_api_request`; 由于上面时间是按year,month,day三个数值字段来存时间的,现在想通过时间段 ...
- mysql的concat用法
问题提出:mybatis的mapper文件中的模糊查询: mysql CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一,下面就将为您详细介绍mysql CONCAT( ...
- 知识点:Mysql 基本用法之函数
函数 MySQL中提供了许多内置函数 例如: sql 内置函数: 一.数学函数 ROUND(x,y) 返回参数x的四舍五入的有y位小数的值 RAND() 返回0到1内的随机值,可以通过提供一个参数(种 ...
- 知识点:Mysql 基本用法之触发器
触发器 使用触发器可以定制用户对表进行[增.删.改]操作时前后的行为 注意:没有查询 一 .创建触发器 触发器基础语法: # 插入前 CREATE TRIGGER tri_before_insert_ ...
- 【转载】 mysql explain用法
转载链接: mysql explain用法 官网说明: http://dev.mysql.com/doc/refman/5.7/en/explain-output.html 参数: htt ...
- 连接列值 mysql CONCAT函数
mysql concat(str1,str2,...) 返回结果为连接参数产生的字符串,如果任何一个参数带有null,则返回结果为null.如果所有参数均为非二进制字符串,则结果为非二进制字符串. 如 ...
- MySQL concat函数的使用
MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...
- c++ stl容器set成员函数介绍及set集合插入,遍历等用法举例
c++ stl集合set介绍 c++ stl集合(Set)是一种包含已排序对象的关联容器.set/multiset会根据待定的排序准则,自动将元素排序.两者不同在于前者不允许元素重复,而后者允许. 1 ...
随机推荐
- L1-038 新世界
这道超级简单的题目没有任何输入. 你只需要在第一行中输出程序员钦定名言“Hello World”,并且在第二行中输出更新版的“Hello New World”就可以了. 输入样例: 无 输出样例: H ...
- 2018-北航-面向对象第三次OO作业分析与小结
1. 规格设计的发展历史 规格设计用于对程序设提供分解,抽象等的手段.在撰写代码规格的时候,需要对组成部件进行抽象. 在1960s,软件设计出现危机,例如Dijkstra提出了goto语句的种种危害, ...
- Windows 7 + PHP 5.3 + WAMP 下 Imagick 扩展安装
1.首先,下载 ImageMagick 安装包.下载地址 下载后运行此安装包.在系统环境变量中添加 MAGICK_HOME 变量,指向安装目录下的modules\coders. 2.下载 Imagic ...
- I.MX6 Linux I2C device& driver hacking
/******************************************************************************************* * I.MX6 ...
- CTF之猪圈密码
猪圈密码又称济会密码,朱高密码,是一种简单的替代密码,所以安全性很低
- ACM大牛的BLOG(转)
Twilightgod CUSThttp://blog.csdn.net/twilightgodAekdycoin FZU http://hi.baidu.com/aekdycoinForeverli ...
- web页面的数据从excel中读取
# -*- coding: utf-8 -*- import xdrlib ,sysimport xlrdimport datetimeimport jsonimport conf,reimport ...
- Android中logcat和日志打印
一.logcat对日志过滤 1.# logcat --help # logcat --help Usage: logcat [options] [filterspecs] options inclu ...
- #define WIN32_LEAN_AND_MEAN 的作用
今天看了用mysql的库+vc连接数据库,结果我用mfc application向导建立一个project,然后加入#include "mysql.h"(已经设置好了环境),编译出 ...
- java后台调用url
版权声明:本文为博主牟云飞原创文章,未经博主同意不得转载. https://blog.csdn.net/myfmyfmyfmyf/article/details/32690757 QXOutStrea ...