jyo*_*eph 10 mysql mysql-management
我最近将一个数据库从一个Windows框转移到了一个linux框.这些表在小写和大写名称之间混合.我需要一种方法将所有表和列重命名为小写.那可能吗?
我在这个SO回答中看到了表格的可能性,但是没有找到任何处理列名的东西.
use*_*076 12
您可以尝试使用Information_Schema.Columns表执行完全相同的操作
编辑:像
SELECT CONCAT('ALTER TABLE ', TABLE_NAME, ' CHANGE `', COLUMN_NAME, '` `',
LOWER(COLUMN_NAME), '` ', COLUMN_TYPE, ';')
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = '{your schema name}'
Run Code Online (Sandbox Code Playgroud)
您可以在MySQL网站上使用Anders Eriksson提出的脚本:
select concat('rename table ', table_name, ' to ' , lower(table_name) , ';') from information_schema.tables where table_schema = 'your_schema_name';
Run Code Online (Sandbox Code Playgroud)