Skip to content
On this page

mysql 批量修改表列名为大小写,批量修改表名字大小写?

前言

在数据库中,遇到表名需要转换大小写,一个表一个表的去修改,就会显得很繁琐,于是通过 sql 批量处理就会显得非常简单。

根据表名 将列修改为小写

sql
SELECT
	concat( 'alter table ', TABLE_NAME, ' change column ', COLUMN_NAME, ' ', LOWER( COLUMN_NAME ), ' ', COLUMN_TYPE, ' comment \'', COLUMN_COMMENT, '\';' ) AS '修改脚本'
	FROM
	information_schema.COLUMNS
	WHERE
	TABLE_NAME = '表名';

根据库名 将列修改为小写

sql
SELECT
	concat( 'alter table ', TABLE_NAME, ' change column ', COLUMN_NAME, ' ', LOWER( COLUMN_NAME ), ' ', COLUMN_TYPE, ' comment \'', COLUMN_COMMENT, '\';' ) AS '修改脚本'
	FROM
	information_schema.COLUMNS

	WHERE
	TABLE_SCHEMA = '数据库名'

根据库名 将表名修改为小写

sql
SELECT
		concat( 'alter table ', TABLE_NAME, ' rename to ', lower( TABLE_NAME ), ';' ) AS '修改脚本'
	FROM
		information_schema.TABLES
	WHERE
		TABLE_SCHEMA = '数据库名'