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
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn