MySQL에서 테이블을 생성할 때 데이터 인덱싱을 나타내는 두 가지 용어인 INDEX와 KEY를 접할 수 있습니다. 두 용어는 모두 동일한 목적을 가지고 있지만 사용법에는 미묘한 차이가 있습니다.
INDEX 및 KEY의 정의
Create Table 문에서의 사용
Create Table 문에서는 INDEX 또는 KEY를 교대로 사용할 수 있습니다. . 예를 들어 다음 두 문은 동일합니다.
CREATE TABLE tasks ( task_id INT UNSIGNED NOT NULL AUTO_INCREMENT, parent_id INT UNSIGNED NOT NULL DEFAULT 0, task VARCHAR(100) NOT NULL, PRIMARY KEY (task_id), INDEX parent (parent_id) ); CREATE TABLE orders ( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, KEY order_date (order_date) );
고유 인덱스와 비고유 인덱스
INDEX와 KEY 모두 비고유 인덱스를 생성할 수 있지만, PRIMARY KEY는 정의상 고유하다는 점에 유의하는 것이 중요합니다. 이는 PRIMARY KEY 열의 값이 테이블의 각 행을 고유하게 식별함을 의미합니다. 반면 INDEX와 KEY는 중복 값을 허용합니다.
기본 키를 KEY로
MySQL에서는 KEY 키워드를 사용하여 PRIMARY KEY를 정의할 수 있습니다. 그러나 혼동을 피하기 위해 PRIMARY KEY 키워드를 명시적으로 사용하는 것이 좋습니다. 예를 들면 다음과 같습니다.
CREATE TABLE customers ( customer_id INT UNSIGNED NOT NULL AUTO_INCREMENT, name VARCHAR(100) NOT NULL, PRIMARY KEY (customer_id) );
권장 사항
KEY와 INDEX는 MySQL에서 동의어이지만 일반적으로 ISO SQL 표준에 부합하고 성능을 향상시키므로 INDEX를 사용하는 것이 좋습니다. 휴대성이 뛰어납니다.
위 내용은 MySQL 테이블 생성에서 INDEX와 KEY의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!