【问题标题】:mysql primary key and unique constraintmysql主键和唯一约束
【发布时间】:2012-11-18 21:08:58
【问题描述】:

我对 mysql 中的主键和唯一约束有疑问。我正在为网站的成员凭据创建一个表。有电子邮件地址、用户名、出生日期等属性。

我相信大多数网站最多允许一个电子邮件地址与一个用户帐户相关联(不确定这是否属实)。所以我将电子邮件设置为我的主键。但用户名也必须是唯一的,不能为空。我不确定如何表示这一点。我应该对用户名创建一个唯一约束并明确声明它不为空吗?我不相信触发器适合这个。有更好的解决方案吗?谢谢。

【问题讨论】:

  • "我应该对用户名创建一个唯一约束并明确声明它为非空"吗?是的。

标签: mysql sql


【解决方案1】:

试试这样的,

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)
)

【讨论】:

  • 感谢您的回复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-28
  • 1970-01-01
相关资源
最近更新 更多