drop all mysql check constraints
AI 를 활용한 개인적인 개발 프로젝트를 진행하고 있는데, check constraints 로 설계한 항목이 어느곳에도 표시되지 않더라.
현재, 프로젝트는 배포는 내가 구성했고, 백엔드 및 프론트엔드를 동시에 AI 가 작업하고 있다.
나는 중간중간 State를 최신으로 업데이트하여, 후속 AI 작업이 잘 이루어지는 일을 한다.
아무튼 이전 AI 스레드에서 어떤 테이블에 check constraints 를 설정했는데, 이 값이 mysqldump 를 해도 보이지가 않더라.
ide 및 mysql workbench 에서도 관련 설정값이 보이지 않았다.
그렇지만 check 조건은 동작 하더라.
상황을 ChatGPT 에서 설명했음.


CHECK 제약조건 제거하고 Trigger 로 대체하라고 권고하더라.
AI 에게 지시 조건 추가

확인 쿼리
SELECT tc.CONSTRAINT_SCHEMA, tc.TABLE_NAME, tc.CONSTRAINT_NAME, cc.CHECK_CLAUSE FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc JOIN INFORMATION_SCHEMA.CHECK_CONSTRAINTS cc ON tc.CONSTRAINT_SCHEMA = cc.CONSTRAINT_SCHEMA AND tc.CONSTRAINT_NAME = cc.CONSTRAINT_NAME WHERE tc.CONSTRAINT_TYPE = 'CHECK';
DROP 쿼리
SELECT CONCAT( 'ALTER TABLE `', tc.CONSTRAINT_SCHEMA, '`.`', tc.TABLE_NAME, '` DROP CHECK `', tc.CONSTRAINT_NAME, '`;' ) AS drop_statement FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc WHERE tc.CONSTRAINT_TYPE = 'CHECK';
이제 DB구조와 DUMP파일 싱크가 맞게 되었음.