제약조건 0 4 1,705

by 하떵똥 [MySQL] 제약조건 table sql contraint [2022.11.15 14:00:19]


원래 기존의 테이블에 시간이 같은 값은 추가되지 못하게 제약조건 걸려고 합니다. 전체 컬럼 하나하나 설정하는 방법 말고 특정 컬럼에만 제약조건을 거는 구문이 있을까요

by 우주민 [2022.11.15 14:06:05]

해당 컬럼에 UNIQUE 옵션을 넣으면 되지 않을까요?


by 하떵똥 [2022.11.15 14:30:30]

alter table takes2 add constraint time_slot_id varchar(100) unique;

이렇게 했는데 자꾸 에러떠서요ㅠ

 


by 마농 [2022.11.15 14:41:24]

해당 항목 하나만 가지고 유니크인지?
다른 항목과 함께 묶어서 유니크인지?
업무 특성을 고려하여 잘 판단해 보시길 바랍니다.
 

-- 유니크 제약조건을 걸 수도 있고.
ALTER TABLE takes2 ADD CONSTRAINT uk_takes2_time_slot_id UNIQUE(time_slot_id);
-- 유니크 인덱스만 걸 수도 있습니다.
CREATE UNIQUE INDEX x01_takes2_time_slot_id ON takes2(time_slot_id);

 


by 우주민 [2022.11.15 17:29:27]

기존에 있는 데이터가 유니크 하지 않아서 에러가 나는 것일 수도 있을거 같습니다.

생성부터 새로 해보시는 것이 어떠실까요?

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입