Mysql 主键和外键相同表示异常

Mysql 主键和外键相同表示异常,mysql,sql-server,database,postgresql,mysql-workbench,Mysql,Sql Server,Database,Postgresql,Mysql Workbench,当执行以下代码行时,会出现抛出错误 CREATE TABLE USERS ( USERNAME VARCHAR(10) NOT NULL, PASSWORD VARCHAR(32) NOT NULL, ENABLED SMALLINT, PRIMARY KEY (USERNAME) ); CREATE TABLE AUTHORITIES ( USERNAME VARCHAR(10) NOT NULL, AUTHORITY VARCHAR(10) NOT NULL, FOREIGN KEY (U

当执行以下代码行时,会出现抛出错误

CREATE TABLE USERS (
USERNAME VARCHAR(10) NOT NULL,
PASSWORD VARCHAR(32) NOT NULL,
ENABLED SMALLINT,
PRIMARY KEY (USERNAME)
);

CREATE TABLE AUTHORITIES (
USERNAME VARCHAR(10) NOT NULL,
AUTHORITY VARCHAR(10) NOT NULL,
FOREIGN KEY (USERNAME) REFERENCES USERS
);
我得到的例外是:

1215无法创建外键约束

外键和主键足够相同会引发错误


请帮助

使参考资料更加具体:

CREATE TABLE AUTHORITIES (
USERNAME VARCHAR(10) NOT NULL,
AUTHORITY VARCHAR(10) NOT NULL,
FOREIGN KEY (USERNAME) REFERENCES USERS(USERNAME)
);

doc here()的格式似乎是
表(列)

这是个好消息,起初当我看到fieldname
用户名
和tablename
用户
时,我认为他们可能是保留字,但他们不在dev.mysql.com网站的保留字列表中。你介意把这个作为答案吗?