由于不用服务器对mysql的表名的大小写敏感要求不一致,经常在出现线上的数据库down到了本地不能运行的情况,贴出一段代码用来批量修改数据库表名大小写。

DELIMITER //   

DROP PROCEDURE IF EXISTS uppercase //   

CREATE PROCEDURE uppercase(IN dbname VARCHAR(200))   

BEGIN  

DECLARE done INT DEFAULT 0;   

DECLARE oldname VARCHAR(200);   

DECLARE cur CURSOR FOR SELECT table_name FROM information_schema.TABLES WHERE table_schema = dbname;   

DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;   

OPEN cur;   

REPEAT   

FETCH cur INTO oldname;   

SET @newname = UPPER(oldname);   

#IF newname equals to oldname, do nothing;
#select 'a' <> 'A'; -> 0
#select 'a' <> BINARY 'A'; -> 1
SET @isNotSame = @newname <> BINARY oldname; IF NOT done && @isNotSame THEN SET @SQL = CONCAT('rename table ',oldname,' to ',@newname); PREPARE tmpstmt FROM @SQL; EXECUTE tmpstmt; DEALLOCATE PREPARE tmpstmt; END IF; UNTIL done END REPEAT; CLOSE cur; END // DELIMITER ;
#调用存储过程
#call uppercase('TEST');
#TEST为你想要修改的数据库的名称

  

最新文章

  1. setTimeout 的黑魔法
  2. AWVS漏洞测试-01节-AWVS的主要作用
  3. oracle 中的存储过程
  4. Hibernate逍遥游记-第13章 映射实体关联关系-002用主键映射一对一(&lt;one-to-one constrained=&quot;true&quot;&gt;、&lt;generator class=&quot;foreign&quot;&gt;)
  5. (原)torch使用caffe时,提示CUDNN_STATUS_EXECUTION_FAILED
  6. Delphi中多线程下使用使用 UniDAC+MSSQL 需要注意的问题(连接前调用CoInitialize)
  7. Windows Message Queue(优先队列)
  8. c++ 简单的词法分析
  9. Firemonkey使用iOS的第三方静态库(Link Binary With Libraries)
  10. Linux IPC实践(3) --具名FIFO
  11. react 16 ssr的重构踩坑
  12. JAVA:调用cmd指令(支持多次手工输入)
  13. STM32点亮闪烁LED灯
  14. Ubuntu 18.04 Server 设置静态IP
  15. .NET:System.Security.Cryptography.CryptographicException 的解决办法
  16. java新手的session初体验
  17. *2.3.4_封装成agent
  18. svm常用核函数介绍
  19. C#导入PFX和Cer证书的工具类
  20. Oracle 表连接方式

热门文章

  1. 手动搭建I/O网络通信框架2:Socket和ServerSocket入门实战,实现单聊
  2. 提示要安装Python-OpenSSL
  3. Python模块---制作属于自己的有声小说
  4. Python+Tornado开发微信公众号
  5. Android Google Play app signing 最终完美解决方式
  6. [译]使用开发工具来调试 Beta 版 WebView
  7. 提高万恶的KPI,切忌要避开这六个低效的编程习惯
  8. codeforces Equalizing by Division (easy version)
  9. Springboot:整合Mybaits和Druid【监控】(十一)
  10. kubernetes的Statefulset介绍