요약 :이 자습서에서는 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)
이 자습서에서는 새 테이블에 대한 기본 키를 생성하거나 기존 테이블에 기본 키를 추가하는 방법을 배웠습니다.
- 이 튜토리얼이 도움이 되었습니까?
- 예 아니요