原创

mysql 将数据库表字段全部转为小写

温馨提示:
本文最后更新于 2022年11月19日,已超过 763 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

需求场景:

     最近在开发项目时,需要创建一张表,发现别的库,已经有人创建了,于是便把建表语言拿过来,直接建表,但是有一件不爽的事,原来创建表时,字段全部是大写,作为强迫症患者的,非得把字段转为小写,才看着顺眼。

如下:

解决方法:

首先使用下面的sql,生成将字段名称改为小写的sql。

SELECT concat('ALTER TABLE '
           , '表名'
           , ' CHANGE COLUMN '
           , COLUMN_NAME, ' '
           , LOWER(COLUMN_NAME)
           , ' '
           , COLUMN_TYPE
           , ' COMMENT '''
           , COLUMN_COMMENT
           , ''';') AS '修改脚本'
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = '数据库名'
  and TABLE_NAME = '表名';

我这边的数据库名称是 mc_inter_resource,表名是 tower_sit,生成将字段名称改为小写的sql如下

SELECT concat('ALTER TABLE '
           , 'tower_sit'
           , ' CHANGE COLUMN '
           , COLUMN_NAME, ' '
           , LOWER(COLUMN_NAME)
           , ' '
           , COLUMN_TYPE
           , ' COMMENT '''
           , COLUMN_COMMENT
           , ''';') AS '修改脚本'
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'mc_inter_resource'
  and TABLE_NAME = 'tower_sit';

执行完,结果如下

 将全部修改字段名称大小的sql复制到出来,然后执行一下,既可以将该表的全部字段改为小写了

效果如下图:

 达到了我们预期的效果,但是有一点点小问题,之前所有字段都是有非空限制,但是修改完之后,非空限制没有了,需要手动加一下。

转载请标注出处365代码共享平台http://www.365codemall.com

正文到此结束
本文目录