제약 이름은 저장 오류를 업무 원인으로 번역한다

서로 다른 규칙 위반을 하나의 예외로 합치지 않고 오류 번호와 제약 이름으로 원인을 분류합니다.

INSERT 거절오류 번호 + 제약 이름

NOT NULL

필수 입력 누락

UNIQUE

이메일·요청 키 중복

FOREIGN KEY

부모 회원이 없음

CHECK

상태·본문 범위 위반

핵심: 입력 수정이 필요한 오류와 재시도 가능한 일시 오류를 구분해야 같은 실패를 반복하지 않습니다.