1.sex 속성에 대해 작성할때 CONSTRAINT sex_ck CHECK (sex=='f' or sex=='m')으로 작성하면 틀리나요?
2.id_fk에 대한 제약조건을 작성할때는 왜 CHECK 구문을 사용하지 않나요? 저는 CONSTRAINT id_fk CHECK FOREIGN KEY(id) REFERENCES doctor(doc_id));로 작성했었거든요!
안녕하세요 길벗수험서 운영팀입니다.
[1]
SQL에서는 '같음'을 표현할 때 등호를 하나만 사용합니다.
등호만 수정하시면 옳은 답안입니다.
[2]
constraint 제약조건 구문은 primary key, foreign key, unique, not null, check 등이 있습니다.
기본키를 설정할 때는 primary key를,
외래키를 설정할 때는 foreign key를,
중복값 비허용은 unique를,
널값 비허용은 not null을,
조건식을 사용하여 값에 제한을 줄 때에는 check를 사용합니다.
그저 문법상의 차이라고 이해하시고, 용도에 맞게 constraint 뒤에 적어주시면 됩니다.
행복한 하루되세요 :)
-
관리자2020-10-14 10:26:24
안녕하세요 길벗수험서 운영팀입니다.
[1]
SQL에서는 '같음'을 표현할 때 등호를 하나만 사용합니다.
등호만 수정하시면 옳은 답안입니다.
[2]
constraint 제약조건 구문은 primary key, foreign key, unique, not null, check 등이 있습니다.
기본키를 설정할 때는 primary key를,
외래키를 설정할 때는 foreign key를,
중복값 비허용은 unique를,
널값 비허용은 not null을,
조건식을 사용하여 값에 제한을 줄 때에는 check를 사용합니다.
그저 문법상의 차이라고 이해하시고, 용도에 맞게 constraint 뒤에 적어주시면 됩니다.
행복한 하루되세요 :)
-
관리자2020-10-14 11:29:50
안녕하세요 길벗수험서 운영팀입니다.
예, 위에서 말씀드린 constraint의 4가지 옵션 중, doctor_id를 참조하는 외래키를 만드는 것은 check 대신 foreign key를 사용해야 합니다.
check가 constraint에 항상 딸린 것이 아닌 옵션 중 하나라는 것을 알아두세요.
행복한 하루되세요 :)
-
*2020-10-14 10:33:55
그럼 제가 질문한 doctor에 관한것은 sex처럼 값에 제한을 주는것이 아니기 때문에 check를 사용 안하는것인가요?