728x90
반응형
table 생성시 해당 문제가 발생했습니다.
저의 경우 column 명이 잘못 적혀있어기 때문에 이 문제가 발생하였다,
# 에러 발생
create table user5 (
seq int primary key auto_increment,
name varchar(10) not null,
gender char(1) check (gender IN('M','F')),
age int default 1 check (age > 0 AND a < 120),
addr varchar(50)
);
=> 에러가 발생한 부분은 ch2부분이므로 두번째 chk 사항인 age 부분에서 잘못된 부분을 찾아봤다.
나의 문제는 age를 a 로 적혀있었기 때문에 column이 잘못되어 에러가 발생함
a-> age로 변경시 잘 작동됨.
#정상 실행
create table user5 (
seq int primary key auto_increment,
name varchar(10) not null,
gender char(1) check (gender IN('M','F')),
age int default 1 check (age > 0 AND age < 120),
addr varchar(50)
);
#check1부분에서 오류발생
create table user5 (
seq int primary key auto_increment,
name varchar(10) not null,
gender char(1) check (g IN('M','F')),
age int default 1 check (age > 0 AND age < 120),
addr varchar(50)
);
에러 메세지가
10:47:12 create table user5 ( seq int primary key auto_increment, name varchar(10) not null, gender char(1) check (g IN('M','F')), age int default 1 check (age > 0 AND age < 120), addr varchar(50) ) Error Code: 3813. Column check constraint 'user5_chk_1' references other column. 0.000 sec
chk_1이라고 뜬 에러를 봤을때 잘못된 부분을 찾으려면 table에서 첫번째 check 부분의 column을 확인하면 된다.
조금더 자세한 사항을 확인하고싶다면
아래의 mysql 사이트에서 확인해볼수 있다.
728x90
반응형
댓글