>  기사  >  데이터 베이스  >  MySQL 테이블에서 CANDIDATE 키를 구현하는 방법은 무엇입니까?

MySQL 테이블에서 CANDIDATE 키를 구현하는 방법은 무엇입니까?

WBOY
WBOY앞으로
2023-08-28 18:37:02870검색

如何在任何 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 키를 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제