1. 犀牛前端部落首页
  2. 数据库百科

MySQL唯一键和主键

MySQL唯一键和主键

用下面的命令创建一个表:

CREATE TABLE people (
  age INT NOT NULL,
  name CHAR(20) NOT NULL
);

我们可以多次插入一个项。

特别地,我们可以让列重复相同的值。

我们可以使用unique key约束强制一个列只有唯一的值:

CREATE TABLE people (
  age INT NOT NULL,
  name CHAR(20) NOT NULL UNIQUE
);

现在如果你试着插入两次Flavio:

INSERT INTO people VALUES (37, 'Flavio');
INSERT INTO people VALUES (20, 'Flavio');

你会得到一个错误:

ERROR:  duplicate key value violates unique constraint "people_name_key"
DETAIL:  Key (name)=(Flavio) already exists.

主键是具有另一个属性的唯一键:它是我们标识表中一行的主要方式。

CREATE TABLE people (
  age INT NOT NULL,
  name CHAR(20) NOT NULL PRIMARY KEY
);

例如,主键可以是用户列表中的一封电子邮件。

主键可以是我们自动分配给每个记录的惟一id。

无论这个值是什么,我们都可以使用它来引用表中的一行。

原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/4721.html

发表评论

登录后才能评论