呵,easy,改成这样CREATE TABLE empright (
login varchar(20) DEFAULT '' NOT NULL,
`right` varchar(4) DEFAULT '' NOT NULL,
UNIQUE empright_x (login,`right`)
);因为right是MySQL里面的保留字
login varchar(20) DEFAULT '' NOT NULL,
`right` varchar(4) DEFAULT '' NOT NULL,
UNIQUE empright_x (login,`right`)
);因为right是MySQL里面的保留字
CREATE TABLE empright (
login varchar(20) DEFAULT '' NOT NULL,
'right' varchar(4) DEFAULT '' NOT NULL,
UNIQUE empright_x (login,'right')
);
错误信息为:
ERROR 1064 at line 629: You have an error in your SQL syntax. Check the manual
that corresponds to your MySQL server version for the right syntax to use near '
'right' varchar(4) DEFAULT '' NOT NULL,
UNIQUE empright_x (l
有一个表的一个列名为right3.22.27版允许列名为right
我在3.22.27版的数据库上执行这样的建表语句可以成功:
create table mytable2(right int not null);我现在要把数据库迁移到另一台服务器上,数据库版本为4.0.16
但4.0.16好像不允许列名为right
执行这样的语句会报错:
create table mytable2(right int not null);ERROR 1064: You have an error in your SQL syntax. Check the manual that corresp
onds to your MySQL server version for the right syntax to use near 'right int no
t null)' at line 1我现在没有办法修改列名,因为很多程序使用了这个列,我不可能去逐一的修改程序。
请问有没有办法解决,多谢!!!!!!