인덱스가 외래 키 제약 조건(Foreign Key) 때문에 삭제되지 않는 경우
1. Foreign Key 제약 조건 이름 확인
SHOW CREATE TABLE <table_name>;
2. 외래 키 제약 조건 삭제
ALTER TABLE <your_table_name> DROP FOREIGN KEY <foreign_key_name>;
3. 인덱스 삭제
ALTER TABLE <your_table_name> DROP INDEX <index_name>;
4. 외래 키 제약 조건 재생성
ALTER TABLE <your_table_name>
ADD CONSTRAINT <foreign_key_name>
FOREIGN KEY (<foreign_column_name>) REFERENCES <foreign_table_name> (<foreign_table_column>);
복잡하니까 예시로 봅시다
SHOW CREATE TABLE 명령어로 확인한 Foreign Key 제약 조건 이름이 다음과 같을 때 (일부만 떼어옴)
KEY idx_theme_store_price (store_id,price),
CONSTRAINT FK_254c27bc315fde04442fb5469b9 FOREIGN KEY (store_id) REFERENCES store (_id)
그리고 나는 저놈의 idx_ theme_store_price 인덱스를 지우고 싶은 상태
ALTER TABLE theme DROP FOREIGN KEY `FK_254c27bc315fde04442fb5469b9`;
ALTER TABLE theme DROP INDEX `idx_theme_store_price`;
ALTER TABLE theme
ADD CONSTRAINT `FK_254c27bc315fde04442fb5469b9`
FOREIGN KEY (`store_id`) REFERENCES `store` (`_id`);
쉽죠?
…..
ㅜㅜ
'내가해냄' 카테고리의 다른 글
"Failed to connect to your instance" (0) | 2024.07.15 |
---|---|
"상태검사 1/2개 통과" (0) | 2024.07.15 |
pm2 환경변수 설정 방법 (0) | 2024.07.15 |
Jest의 병렬실행 (0) | 2024.07.15 |
특정 브랜치를 새로운 폴더명으로 clone 하는 git 명령어 (0) | 2024.07.08 |