繁体   English   中英

mysql主键和唯一约束

[英]mysql primary key and unique constraint

我对mysql中的主键和唯一约束有疑问。 我正在为网站的会员凭证创建一个表。 有电子邮件地址,用户名,Dob等属性。

我相信大多数网站都允许一个电子邮件地址最多与一个用户帐户关联(不确定这是否属实)。 因此,我将电子邮件设置为主键。 但是用户名也必须是唯一的,并且不能为null。 我不确定如何代表这一点。 我应该在用户名上创建唯一约束并将其显式声明为非null吗? 我认为触发器不适合这样做。 有更好的解决方案吗? 谢谢。

尝试这样的事情,

CREATE TABLE tableName
(
    userName VARCHAR(50) NOT NULL,
    email VARCHAR(100) NOT NULL,
    -- other columns here .....
    CONSTRAINT tb_PK PRIMARY KEY (userName),
    CONSTRAINT tb_uq UNIQUE (email)
)

暂无
暂无

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

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