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

2023年 8月 29日 46.7k 0

如何在任何 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
-> );
Query OK, 0 rows affected (0.50 sec)

登录后复制

以下是在任何MySQL中实现候选键的查询:

mysql> alter table DemoTable1400 add unique key name_age_unique(Name,Age);
Query OK, 0 rows affected (0.67 sec)
Records: 0 Duplicates: 0 Warnings: 0

登录后复制

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

mysql> insert into DemoTable1400(Name,Age) values('Chris',23);
Query OK, 1 row affected (0.14 sec)
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);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable1400(Name,Age) values('Chris',24);
Query OK, 1 row affected (0.10 sec)

登录后复制

使用select −显示表中的所有记录

mysql> select * from DemoTable1400;

登录后复制

这将产生以下输出 -

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

登录后复制

以上就是如何在任何 MySQL 表中实现 CANDIDATE 键?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论