본문 바로가기
[ Developer ]/Oracle SQL

[SQL] INSERT INTO 삽입문 쿼리

by 김현섭. 2016. 5. 11.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
SQL - INSERT INTO

# 쿼리의 삽입 문법


INSERT INTO에는 테이블 이름과 컬럼명들이 들어간다
또한 VALUES에는 컬럼에 들어갈 순서대로 입력해준다

일반적인 INSERT문의 문법


GRADE 테이블에 가보면 데이터가 입력되어 있다


그러나 쿼리는 휘발성이기 때문에 변경사항 커밋을 해주지 않는다면 
데이터가 반영되지 않는다


커밋하기 전에는 임시로 저장이 되어 있고 커밋을 해야 적용이 되는 것이다
적용이 된 후 다시 쿼리를 실행시키면 오류가 발생한다


00001 번의 오류인데 바로 PK가 중복되었다는 에러이다
키 값의 중복을 피하고 간편하게 하기 위해 시퀀스를 사용하면 된다


시퀀스를 이용해서 전체 관람가를 입력하고
전체 관람가 위치에 다음에 입력할 12세 이상 관람가를 입력한다


결과값을 보면 GRADE_ID가 1개씩 증가한 것을 볼 수 있다


시퀀스를 이용한 쿼리로 간단하게 입력을 한다
위와 같은 INSERT문을 이용해서 다른 테이블에 데이터도 입력할 수 있다


장르 테이블에 장르ID와 장르TITLE에 입력하는 것을 볼 수 있다
주의할 점은 시퀀스가 다르다는 것이다
다르게 관리되어야 그 테이블에 맞는 로우에 맞게 숫자를 증가 시킬 수 있다

여러 데이터를 입력할 때 쿼리로 모두 작성 후 


위의 명령문 실행 버튼을 누른다면 세미콜론을 만날 때 까지 실행된다
하지만 그 옆의 버튼 인 스크립트 실행은 모두 실행하게 된다


중간에 만약에 오류가 발생해서 실행되지 못했다면
그 시퀀스 번호는 건너뛰게 된다
오류로써 입력 못하게 되고 다음으로 넘어가니 또 하나의 시퀀스 번호가 넘어가 있다
그렇기 때문에 하나의 번호가 비는데 크게 신경쓰지 않아도 된다

만약에 다량의 데이터를 입력해야 한다면 
엑셀을 사용해서 쿼리문을 작성해도 되고 텍스트 파일로 가지고 있다면 Java를 통해서 split을 이용해 파일 IO 처리를 할 수도 있다