제약조건 질문있습니다.
강의 후반부에
create table test_table50(
data1 int not null,
data2 int not null,
constraint chk1 check (data1 > 10),
constraint chk2 check (data2 in(10,20,30))
);
insert into test_table50(data1, data2) values(20,30);
select * from test_table50;
insert into test_table50(data1, data2) values(1, 100);
저같은 경우는 마지막에 insert가 안되는데 강의에서는 1,100이 삽입되는데요.
설명하신 바로는 다른db는 check 제약조건을 무시되지 않지만 mysql은 무시가 된다고 하셨는데
제 에러 메시지에는
아래와 같이 에러메시지가 출력되서요.
이유를 알 수 있을까요?
| 0 | 121 | 23:41:27 | insert into test_table50(data1, data2) values(1, 100) | Error Code: 3819. Check constraint 'chk1' is violated. | 0.000 sec |
답변 1
0
안녕하세요...
강의 촬영시 사용했던 MySQL 버전은 5.7 이고 현재는 8.0 버전입니다.
버전이 업데이트 되면서 check 제약조건도 잘 동작하는 것으로 변경되었습니다.
하지만 프로젝트에서 항상 최신버전을 이용하는 것은 아니기 때문에 과거 버전의 내용도 알아두시면 좋습니다.
프로젝트때 사용하시는 버전을 확인하시고 check 제약조건 사용 여부를 결정해주시면 되겠습니다. 감사합니다^^
DB 쿼리 최적화 시 DB 처리와 애플리케이션 처리의 기준이 궁금합니다
0
6
1
실무에서의 인덱스 관리 방법이 궁금합니다
0
23
1
Issuance 테이블에 status, couponId 인덱스가 꼭 필요할까요?
2
26
1
문제와 풀이2 1번문제
0
22
1
부하 테스트 시 설정 관련 질문드립니다
1
65
2
build 시 에러 해결방법 공유(docker.desktop 업데이트 -> 의존성 버전 수정)
0
61
2
sakila 실전 17번 문제
0
39
1
복합인덱스 설계 질문
0
86
1
union all을 했을 때 제대로 값이 나오지 않는 것 같습니다.
0
251
1
마지막 매개를 이용한 join 관련해 질문이 있습니다.
0
346
1
check 제약 조건이 mysql에 적용되는거 같습니다.
0
237
1
서로 다른 테이블의 동일한 컬럼명은 동일한 데이터를 가지는 건가요?
0
283
1
직함이 Staff이지만 Senior Staff는 아닌 사원들의 사원 번호를 불러오는 코드를 작성하여라
0
278
1
password입력창이 안뜹니다
0
304
1
오류 발생 질문
0
335
1
중복된 데이터 삭제
0
382
1
32bit버전
0
281
1
숫자 함수 round(salary 1*1, 0)
0
206
0
데이터 베이스 및 테이블 생성
1
1927
2
SQL 설치 관련 문의사항입니다.
0
248
1
강의 데이터중복의 최소화 PPT에서 질문입니다
0
269
1
영상에 사용되는 ppt자료 받을 수 있을까요?
1
246
0
조건절 이용하기 실습 중 데이터를 너무 많이 불러오는 경우 중단하는 방법이 있는지요?
0
384
2
[처음시작하는 MySQL DataBase] 학습을 위한 데이터베이스 설치 강의 질문입니다.
0
249
1





