MySQL中的information_schema

information_schema 数据库是MySQL自带的,可看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等

SCHEMATA表:提供了关于数据库的信息。

TABLES表:给出了关于数据库中的表的信息。

COLUMNS表:给出了表中的列信息。

STATISTICS表:给出了关于表索引的信息。

 

配合concat()函数可以达到如虎添翼的效果;

SELECT CONCAT('update ',table_schema,".",table_name," set schoolId=149;") FROM `information_schema`.columns WHERE table_schema='idsp_jn14' AND column_name='schoolId'; --查出数据库某个表包含字段是schoolId,并拼接成SQL语句

 

SELECT concat('use ',SCHEMA_NAME,'; ALTER TABLE `frm_requestlog` ADD INDEX `requestLog_createTime` (`CreatedTime`); ALTER TABLE `frm_requestlog` ADD INDEX `requestLog_userId` (`UserId`);') FROM `SCHEMATA` WHERE `SCHEMA_NAME` LIKE 'idsp%' and SCHEMA_NAME!='idsp_dblocator'  LIMIT 0,1000; --这是一条拼接成生成索引的SQL语句

转载于:https://www.cnblogs.com/xbblogs/p/5345908.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值