바닥코딩

SQL 문법 활용 (3) 본문

데이터 베이스/SQL

SQL 문법 활용 (3)

개발공부개발공부 2020. 1. 3. 14:17

1. ON DUPLICATE KEY UPDATE 

= DB 에서 대량에 데이터를 등록할때  키값이 있어도 INSERT를 하는 과정에서 문제가 발생할 수 있다 따라서 키값이 있는 경우에는 INSERT를 해주는 방법도 있찌만 UPDATE를 해주는 방법을 통해 에러를 줄인다 

     <데이터를 INSERT 할 떄 이미 있는 데이터라면 UPDATE 한다!>

    ON DUPLICATE KEY UPDATE 구문은 UNIQUE 한  KEY 값이 기준이 되어야만 사용할 수 있다

1
2
3
4
5
6
7
8
9
10
CREATE TABLE USERS (
     NAME VARCHAR(25),
     EMAIL VARCHAR(255)
);
 
ALTER TABLE USERS ADD UINQUE (NAME); 
 
 
INSERT INTO USER (NAMEM, EMAIL) VALUES ('TEZ','TEZ.gmail.com'ON DUPLICATE KEY UPDATE
 NAME ='TEZ''TEZPARK@CO.KR'
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter

해당 Query를 두번 실행하면  gmail 메일이 co.kr 로 UPDATE 되는 것을 확인 할 수 있다 

 

2. AUTO_INCREMENT

= 스키마를 작성하다보면 데이터의 수를 PK 로 설정을 해줘야 할 떄가 있는데 이럴 때 PK 중복이 일어나지 않게 사용할 떄 적합한 문장이다 

1
2
3
4
CREATE TABLE TEST(
  NUM INT(11NOT NULL AUTO_INCREMENT PRIMARY KEY , 
  NAME VARCHAR(10)  NOT NULL 
)
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter

위와 같은 쿼리를 작성할 경우 NUM 값이 데이터가 추가 될 때 마다 자동으로 1씩 증가하는 것을  볼 수 있다 

 

'데이터 베이스 > SQL' 카테고리의 다른 글

INDEX  (0) 2020.01.03
MySQL NULL 관련함수  (0) 2020.01.03
SQL 문법 활용(2)  (0) 2020.01.03
SQL 문법 활용(1)  (0) 2020.01.03
절차형 SQL 주요 문법  (0) 2020.01.03