繁体   English   中英

无法在表格中设置外键

[英]Cannot set foreign key in the table

我有2张桌子。

login (login_id primary key 
Email varchar(254) not null
Password varchar(20) not null)

registration(
id PK
Email
password
name
... etc

)

我试图将登录电子邮件设置为外键,并将注册(电子邮件)设置为参考。 但是我不能这样做ALTER TABLE login ADD FOREIGN KEY(email)参考registraion(email);

我正在将其用于项目,以便在以用户身份登录时可以匹配登录名和注册电子邮件。 有人可以帮忙吗

2个表中的列定义必须匹配才能创建FK。

registration( id PK, Email VARCHAR(254) NOT NULL, password name

两个表中列的数据类型和长度必须匹配。

可以通过引用另一个表上的主键或具有某些限制(例如列类型和大小)的唯一键来创建外键。 两列的类型和大小必须匹配。

有关事实的更详细讨论,您可以参考mysql-non-primary-foreign-key和MySql参考手册create-table-foreign-keys

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM