티스토리 뷰
728x90
Msql 중복키 제약조건
1. ON DUPLICATE KEY UPDATE
- Insert 문에 ON DUPLICATE KEY UPDATE 절을 명시하여 UNIQUE 인덱스 또느 PRIMARY KEY 제약조건이 설정된 칼럼에
중복값이 삽입될경우 Error를 출력하지 않고 새로운 값으로 갱신됨.
- 테이블 생성
create table tb_test
(
idx int(11) not null auto_increment,
user_id varchar(30) not null,
user_name varchar(30) not null,
user_hp varchar(20),
user_email varchar(50),
regdt datetime,
primary key(idx),
unique key(user_id)
)
- ON DUPLICATE KEY UPDATE 사용
insert into tb_test set
user_id = 'test',
user_name = '테스트',
user_hp = '010-1234-1234',
user_email = 'test@naver.com',
regdt = now()
ON DUPLICATE KEY UPDATE
user_name = '테스트',
user_hp = '010-1234-1234',
user_email = 'test@naver.com',
regdt = now()
2. IGNORE
- 중복키 제약조건에 위배 시 Insert 가 되지 않는다.
insert IGNORE into tb_test set
user_id = 'test',
user_name = '테스트',
user_hp = '010-1234-1234',
user_email = 'test@naver.com',
regdt = now()
3. REPLACE INTO
- 중복키 제약조건에 위배되면 해당 레코드(Record)를 삭제하고 새로운 레코드(Record)를 Insert 한다.
REPLACE into tb_test set
user_id = 'test',
user_name = '테스트',
user_hp = '010-1234-1234',
user_email = 'test@naver.com',
regdt = now()
728x90
'프로그램개발' 카테고리의 다른 글
JavaScript 텍스트 클립보드 복사기능 (0) | 2023.11.09 |
---|---|
Linux의 파일갯수 및 디렉터리 수 확인 (0) | 2023.11.08 |
Mysql Character set (0) | 2023.10.27 |
Enter(엔터)키 막기 (0) | 2023.10.19 |
var, let, const 차이 및 설명 (0) | 2023.10.17 |