在MySQL中,如何重命名带有特殊字符的列?

后端开发 2026-07-11

当列名包含特殊字符时,该如何重命名该列?当我尝试运行下面的代码时,出现以下错误:

Unknown column 'Actual gross' in 'field list'

ALTER TABLE practice.practice1 

RENAME COLUMN \`Actual gross\` TO \`Actual_Gross\`;

我在使用MySQL 8。

解决方案

SELECT CONCAT( 'ALTER TABLE practice.practice1 RENAME COLUMN `',
               COLUMN_NAME,
               '` TO Actual_Gross'
               ) 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'practice' 
  AND TABLE_NAME = 'practice1' 
  AND COLUMN_NAME LIKE 'Actual%gross'
INTO @sql;

PREPARE stmt FROM @sql;
EXECUTE stmt;
DROP PREPARE stmt;
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章