INSERT

TABLE에 열을 추가합니다. TABLE에 DATA를 넣는다는 말이죠~!
사용법은 다음과 같습니다.

INSERT INTO student
 ( name, secure_no, age, birth, city, eng_score, kor_score, math_score )
VALUES
 ( '최종혁', '720118-1111111', 27, '18-JAN-72', 'SUWON', 100, 90, 95' );

여기서 student는 TABLE 명이고, 괄호안의 것들은 COLUMN NAME입니다.

그러니까 이런 구조네요. 

INSERT INTO TABLE_NAME ( COLUMN NAMES ) VALUES  ( COLUMN VALUES );

여기에서 COLUMN NAMES의 값들과 COLUMN VALUES의 값들의 수는 일치해야 합니다.

INSERT 문에서 COLUMN VALUES에 들어갈 수 있는 값들은 다음과 같습니다.


물론 위의 세가지 값이 혼용될 수도 있죠.

INSERT 문에서 COLUMN NAMES의 DATA TYPE과 COLUMN VALUES의 DATA TYPE은 일치해야 합니다. 위에서 보면 문자나 날짜는 '로 막고, 숫자는 기냥 썼죠.. 일치하지 않으면 물론 ERROR가 발생합니다. 그리고 물론 TABLE의 CREATE시 지정한 크기를 넘는 DATA를 INSERT 해도 ERROR가 발생합니다.

참~! INSERT할 경우 COLUMN NAMES는 생략할 수도 있어요. 아래와 같이..

INSERT INTO student VALUES
 ( '최종혁', '720118-1111111', 27, '18-JAN-72', 'SUWON', 100, 90, 95' );

모든 COLUMN에 INSERT한다는 가정이 포함되죠.

INSERT 문에서도 SELECT 문에서와 같이 SUB QUERY를 사용할 수 있어요. 그러면 COLUMN VALUES를 지정해서 넣는 대신에 SELECT 문을 사용할 수 있겠죠. 그럼 예를 들어볼까요?

INSERT INTO student
 ( name, secure_no, age, birth, city, eng_score, kor_score, math_score )
VALUES
 SELECT name, secure_no, age, birth, city, eng_score, kor_score, math_score
   FROM all_student ;

SUB QUERY를 이용하면 쉽게 많은 데이터를 생성할 수 있을 것 같네요. 테스트 데이터로 활용하면 더 좋겠죠?