Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

PRIMARY KEY(기본 키)란 무엇이며 MySQL 테이블에서 어떻게 사용할까요?


PRIMARY KEY(기본 키)는 데이터베이스에서 각 행(row)을 고유하게 식별하는 역할을 합니다. 기본 키에는 반드시 중복되지 않는 고유한 값이 저장되어야 하며, NULL 값은 허용되지 않습니다. 또한 하나의 MySQL 테이블에는 PRIMARY KEY가 하나만 존재할 수 있습니다.

기본 키 컬럼은 테이블을 생성할 때 PRIMARY KEY 제약 조건(constraint)을 정의하여 만들 수 있습니다. 제약 조건을 지정하려면 테이블 생성 시 PRIMARY KEY 키워드를 사용해야 하며, 아래 예시를 통해 확인해 보겠습니다.

예제

다음 쿼리는 'RollNo' 컬럼을 PRIMARY KEY로 지정하여 'Student'라는 이름의 테이블을 생성합니다.

mysql> Create Table Student(RollNo INT PRIMARY KEY, Name Varchar(20),
    Address Varchar(20), DOB DATE);
Query OK, 0 rows affected (0.16 sec)

이제 다음과 같이 DESCRIBE 명령으로 테이블 구조를 확인하면, 'RollNo' 컬럼에 PRIMARY KEY 제약 조건이 적용된 것을 볼 수 있습니다.

mysql> Describe Student;

+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| RollNo  | int(11)     | NO   | PRI | NULL    |       |
| Name    | varchar(20) | YES  |    | NULL    |       |
| Address | varchar(20) | YES  |    | NULL    |       |
| DOB     | date        | YES  |    | NULL    |       |
+---------+-------------+------+-----+---------+-------+

4 rows in set (0.03 sec)

결과에서 Key 열에 PRI로 표시된 것을 확인할 수 있으며, Null 열이 NO인 것도 알 수 있습니다. 이제 'Student' 테이블의 'RollNo' 컬럼에는 반드시 고유한 값만 입력해야 하며, NULL 값은 절대 저장할 수 없습니다.

PRIMARY KEY의 주요 특징 정리

  • 각 행을 고유하게 식별합니다.
  • 중복된 값과 NULL 값을 허용하지 않습니다.
  • 하나의 테이블에는 하나의 PRIMARY KEY만 존재할 수 있습니다.
  • 데이터 무결성을 보장하고 조회 성능 향상에 도움을 줍니다.