2017-07-14 99 views
0

向表中添加新列时出现语法错误。除此之外每隔一列添加正确的:更改表格时的mysql语法错误

ALTER TABLE stock.stock_data ADD LEGAL_&_GENERAL VARCHAR(40); 

感谢您的帮助。

+2

删除'&'。使用'和'。 –

+1

请勿在表名中使用'&' –

回答

2

MySQL (as with all databases) limits the characters in unquoted identifiers

在不带引号的标识符

允许的字符:

ASCII:0-9,AZ,AZ $ _](基本拉丁字母,数字0-9美元, 下划线)

扩展:U + 0080 ... U + FFFF

注意, “&” 是不是其中之一。解决这个问题的最佳方法是使用“正常”的角色:

ALTER TABLE stock.stock_data ADD LEGAL_AND_GENERAL VARCHAR(40); 

如果你真的想,你可以引用标识符:

ALTER TABLE stock.stock_data ADD `LEGAL_&_GENERAL` VARCHAR(40); 

然而,你将不得不引用名称无论您使用专栏,只是混淆查询,并使用备用密钥。