DB관련해서 궁금한게 있습니다
본문
table name : test
idx int(11) not null auto_increment
user_idx int(11) not null
name varchar(100)
type varchar(10)
위와같이 있을때
idx 는 자동으로 숫자가 올라가면서 insert 되니깐 중복이 되지않아서 괜찮은거 같은데요
user_idx , name , type 이 3개가 모두 중복일때 등록이 안되도록 하는 방법은 어떻게 해야하나요?
primary key 를 3개다 넣으면 되는건가요?
예를들어
100 , 가 , 가 데이터가 있을때
100 , 가 , 가 (X)
100 , 가 , 나 (O)
100 , 나 , 나 (O)
이해가 되시는지 모르겠는데 저런식으로 3개다 중복이 안될때만 등록되도록 테이블을 어떻게 생성해야할까요...
답변 3
ALTER TABLE [table_name] ADD UNIQUE KEY (column1, column2, ..... );
유니크를 거세요.
$chk = sql_fetch(" select count(*) as cnt from test where user_idx='$user_idx' and name ='$name' and type='$type' ");
if($chk['cnt']) alert("이미 등록된 자료입니다.");
답변을 작성하시기 전에 로그인 해주세요.