不能在MySQL中选择包含星号的字段名称

时间:2015-01-30 02:37:23

标签: mysql database

我需要引用一个包含星号作为标识符的字段,但MySQL在触发器中无法识别它:

DELIMITER $$

CREATE TRIGGER new_data_inserted AFTER INSERT on table1
FOR EACH ROW
BEGIN
    INSERT INTO table2(special*) SELECT NEW.special*;
END;

我尝试通过以下方式转义*:

INSERT INTO table2(special\*) SELECT NEW.special\*;

还有:

INSERT INTO table2('special*') SELECT 'NEW.special*';

但在两种情况下MySQL都会抛出错误代码:1064

任何解决方案?重要的是要注意重命名字段名称 mus not (客户要求)。

1 个答案:

答案 0 :(得分:3)

将列名括在反引号中,如下所示:

`special*`

SQL Fiddle