如何在任何MySQL表中实现CANDIDATE键?

每个关系可以具有一个或多个候选键。这些候选键之一称为主键。每个候选键都有资格获得主键。因此,主键候选称为候选键。要在MySQL中实现候选键,请将多个列设置为唯一键。这些键符合候选键的要求,如以下语法所示:

alter table yourTableName add unique key anyName(yourColumnName1,yourColumnName2);

让我们首先创建一个-

mysql> create table DemoTable1400
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> Name varchar(40),
   -> Age int
   -> );

以下是在任何MySQL中实现CANDIDATE键的查询-

mysql> alter table DemoTable1400 add unique key name_age_unique(Name,Age);
Records: 0  Duplicates: 0  Warnings: 0

使用insert在表中插入一些记录-

mysql> insert into DemoTable1400(Name,Age) values('Chris',23);
mysql> insert into DemoTable1400(Name,Age) values('Chris',23);
ERROR 1062 (23000): Duplicate entry 'Chris-23' for key 'name_age_unique'
mysql> insert into DemoTable1400(Name,Age) values('David',23);
mysql> insert into DemoTable1400(Name,Age) values('Chris',24);

使用选择显示表中的所有记录-

mysql> select * from DemoTable1400;

这将产生以下输出-

+----+-------+------+
| Id | Name  | Age  |
+----+-------+------+
|  1 | Chris |   23 |
|  4 | Chris |   24 |
|  3 | David |   23 |
+----+-------+------+
3 rows in set (0.00 sec)