요약 :이 자습서에서는 MySQL 기본 키 제약 조건을 사용하여 테이블의 기본 키를 만드는 방법을 배웁니다.
MySQL 기본 키 소개
기본 키는 테이블의 각 행을 고유하게 식별하는 열 또는 열 집합입니다. 기본 키는 다음 규칙을 따릅니다.
- 기본 키는 고유 한 값을 포함해야합니다. 기본 키가 여러 열로 구성된 경우 이러한 열의 값 조합은 고유해야합니다.
- 기본 키 열은
NULL
값을 가질 수 없습니다.NULL
를 기본 키 열에 삽입하거나 업데이트하려고하면 오류가 발생합니다. MySQL은 기본 키 열에NOT NULL
제약 조건을 암시 적으로 추가합니다. - 테이블에는 기본 키가 하나만있을 수 있습니다.
MySQL이 더 빠르게 작동하기 때문에 정수를 사용하는 경우 기본 키 열의 데이터 유형은 정수 여야합니다 (예 : INT,
BIGINT
). 또한 기본 키에 대한 정수 유형의 값 범위가 테이블에있을 수있는 모든 가능한 행을 저장하기에 충분한 지 확인해야합니다.
기본 키 열에는 종종 속성은 테이블에 새 행을 삽입 할 때마다 자동으로 순차 정수를 생성합니다.
테이블의 기본 키를 정의하면 MySQL은 자동으로 .
MySQL PRIMARY KEY 예제
PRIMARY KEY
제약 조건을 사용하면 테이블의 기본 키를 정의 할 수 있습니다. 테이블을 만들거나 변경할 때.
1) CREATE TABLE에서 PRIMARY KEY 제약 조건을 정의합니다.
일반적으로 문.
기본 키에 열이 1 개있는 경우 PRIMARY KEY
제약 조건을 열 제약 조건으로 사용할 수 있습니다.
Code language: SQL (Structured Query Language) (sql)
기본 키에 둘 이상의 열이있는 경우 다음을 사용해야합니다. e PRIMARY KEY
제약을 테이블 제약으로 사용합니다.
이 구문에서 column_list
의 열을 쉼표 ( ,).
PRIMARY KEY
테이블 제약 조건은 기본 키에 하나의 열이있는 경우 사용할 수 있습니다.
다음 예제는 기본 키가 user_id
열인 users
:
이 문은 roles
제약 조건이있는
테이블 :
기본 키가 여러 열로 구성된 경우 끝에 지정해야합니다. CREATE TABLE
문의. PRIMARY KEY
키워드 뒤에 쉼표로 구분 된 기본 키 열 목록을 괄호 안에 넣습니다.
다음 예에서는 user_roles
<기본 키가 user_id
및 role_id
의 두 열로 구성된 / div> 테이블. PRIMARY KEY
제약 조건을 테이블 제약 조건으로 정의합니다.
문이 두 개의 외래 키 제약 조건도 생성했습니다.
2) PRIMARY 정의 ALTER TABLE을 사용한 KEY 제약 조건
어떤 이유로 테이블에 기본 키가없는 경우 ALTER TABLE
문을 사용하여 기본 키를 추가 할 수 있습니다. 다음 예는
Code language: SQL (Structured Query Language) (sql)
다음 예는 기본 키에 id
열을 추가합니다.
먼저 기본 키없이 pkdemos
테이블을 만듭니다.
Code language: SQL (Structured Query Language) (sql)
둘째, 기본 키를 추가합니다. ALTER TABLE
문을 사용하여 pkdemos
테이블의 키 :
Code language: SQL (Structured Query Language) (sql)
이미 데이터가있는 테이블에 기본 키를 추가하는 경우. 기본 키에 포함될 열의 데이터는 고유해야하며 NULL이 아니어야합니다.
PRIMARY KEY vs. UNIQUE KEY vs. KEY
KEY
는 INDEX
의 동의어입니다. 기본 키 또는 고유 키의 일부가 아닌 열 또는 열 집합에 대한 색인을 만들려는 경우 KEY
를 사용합니다.
UNIQUE
색인은 열의 값이 고유해야 함을 보장합니다. PRIMARY
색인과 달리 MySQL은 UNIQUE
색인에서 NULL
값을 허용합니다. 또한 테이블에 여러 UNIQUE
색인이있을 수 있습니다.
email
및 iv id = “a8ac12086e users
테이블에있는 사용자의 “>
는 고유해야합니다.규칙을 적용하려면 email
및 username
열에 대한 UNIQUE
색인을 다음과 같이 정의 할 수 있습니다. 다음 문 :
username
열에 대한 UNIQUE
색인을 추가합니다.
Code language: SQL (Structured Query Language) (sql)
email
열에 대한 UNIQUE
색인 추가 :
Code language: SQL (Structured Query Language) (sql)
이 자습서에서는 새 테이블에 대한 기본 키를 생성하거나 기존 테이블에 기본 키를 추가하는 방법을 배웠습니다.
- 이 튜토리얼이 도움이 되었습니까?
- 예 아니요