HOWTO · MySQL

MySQL 고유 제약 조건 제거

오늘 포스트에서는 MySQL에서 고유 제약 조건을 삭제하거나 제거하는 여러 가지 방법을 살펴보겠습니다.

오늘 포스트에서는 MySQL에서 고유한 제약 조건을 삭제하거나 제거하는 방법을 살펴보겠습니다.

MySQL에서 고유 제약 조건 제거

경우에 따라 열 또는 열 컬렉션의 각 값이 고유한지 확인하고 싶을 수 있습니다. 예를 들어 직원 데이터베이스의 사용자 이메일 주소나 고객 테이블의 고객 전화번호는 달라야 합니다.

UNIQUE 제약 조건은 이 규칙을 적용하는 데 사용됩니다.

UNIQUE라는 무결성 제약 조건은 열 또는 열 조합의 각 값이 구별되도록 합니다. 테이블 또는 열 제약 조건은 UNIQUE 제약 조건일 수 있습니다.

관련 UNIQUE 인덱스는 고유 제약 조건이 정의될 때 MySQL에 의해 생성되며 이 인덱스는 제약 조건을 적용하는 데 사용됩니다.

MySQL이 전체 테이블을 검색하지 않도록 하여 자주 사용되는 열을 인덱싱하여 SELECT 쿼리 속도를 높일 수 있습니다. 때때로 인덱스를 삭제하는 것이 유리할 수 있습니다.

레코드가 변경되면 MySQL은 수정된 열을 포함하는 모든 인덱스를 업데이트해야 합니다. 특정 인덱스를 사용하지 않으면 테이블이 과도하게 인덱싱될 수 있습니다. 인덱스를 제거하면 테이블 업데이트의 효율성이 높아집니다.

통사론:

DROP INDEX index_name ON table_name;
ALTER TABLE table_name DROP INDEX index_name;
ALTER TABLE table_name DROP INDEX index_name_1, DROP INDEX index_name_2;

여기서 table_name은 인덱스를 삭제할 테이블의 이름을 나타내고 index_name은 삭제할 인덱스의 이름을 나타냅니다.

PRIMARY KEY가 아닌 인덱스를 삭제할 때 명령문에 index_name을 포함해야 합니다. 이름을 모르면 SHOW INDEX를 사용하십시오.

마지막 문장은 작업을 쉼표로 나눈 경우 단일 ALTER TABLE 쿼리로 여러 드롭 작업을 수행할 수 있는 방법을 보여줍니다.

이전 개념을 더 잘 이해하려면 다음 예를 고려하십시오.

DROP INDEX email ON Employees;
ALTER TABLE Employees DROP INDEX email;

위의 예에서는 Employees 테이블의 고유 제약 조건인 email 인덱스를 제거합니다. 이메일 열 및 관련 데이터는 영향을 받지 않습니다. 인덱스만 파괴됩니다.

사용자는 문제 없이 동일한 이메일 값의 여러 사례를 추가할 수 있습니다.

MySQL과 호환되는 모든 브라우저에서 위의 코드 행을 실행하십시오. 다음과 같은 결과가 표시됩니다.

successfully dropped index