참치코더의 꿈 메모장

2021/08/15 Oracle - 테이블에 데이터 추가하기 본문

Oracle

2021/08/15 Oracle - 테이블에 데이터 추가하기

참치깡 2021. 8. 15. 12:50
728x90

테이블에 데이터를 추가하는 INSERT 문 

 

INSERT INTO 테이블 이름[(열1, 열2, ... , 열N)]

VALUES (열 1에 들어갈 데이터, 열 2에 들어갈 데이터, ... ,  열 N에 들어갈 데이터);

 

INSERT INTO : 새로운 데이터를 입력할 대상 테이블과 열을 입력한다

VALUES : INSERT INTO에서 지정한 테이블의 열 순서와 자료형에 맞는 입력 데이터를 지정한다.

 

* 데이터를 입력할 때 숫자는 숫자를 바로 명시하고, 문자열 데이터를 작은따옴표(' ')를 사용한다.

 

INSERT문 오류가 발생할 때 

 

INSERT문에서 지정한 열 개수와 각 열에 입력할 데이터 개수가 일치하지 않거나 자료형이 맞지 않는 경우 

열 길이를 초과하는 데이터를 지정하는 경우에는 INSERT문에 오류가 발생하여 실행되지 않는다.

 

INSERT문으로 데이터 입력하기 (열 지정을 생략할 때)

 

INSERT문에 지정하는 열은 생략할 수도 있다.

열 지정을 생략하면 해당 테이블을 만들 때 설정한 열 순서대로 모두 나열되어 있다고 가정하고 

데이터를 작성해야 한다.

 

테이블에 NULL 데이터 입력하기

 

INSERT 문으로 새로운 데이터를 추가할 떄 특정 열에 데이터가 확정되지 않았거나 

굳이 넣을 필요가 없는 데이터인 경우에는 NULL을 사용한다.

 

*  해당 열의 자료형이 문자열 또는 날짜형일 경우 빈공백 문자열을 사용해도 NULL을 입력할 수 있다.

 

테이블에 날짜 데이터 입력하기

 

INSERT문을 이용하여 데이터를 입력하려고 할때  VALUES에 날짜 데이터를 YYYY/MM/DD

또는 YYYY-MM-DD 형식으로도 날짜 데이터를 입력할 수 있다.

 

날짜 데이터를 입력할 때 유의점

 

년/월/일 순서와 반대로 일/월/년 순서로 데이터를 입력하면 오류가 발생한다.

 

* 오라클이 설치되어 있는 운영체제의 종류나 기본 언어군에 따라 날짜 표기방식이 다르기 때문이다.

* 따라서 날짜 데이터를 INSERT문으로 입력할 때는 TO_DATE 함수를 사용하는 것이 좋다.

 

SYSDATE를 사용하여 날짜 데이터 입력하기

 

현재 시점으로 날짜를 입력할 경우에는 다음과 같이 SYSDATE를 지정하여 간단히 처리할 수 있다.

 

서브쿼리를 사용하여 한 번에 여러 데이터 추가하기 

 

INSERT문에 서브쿼리를 사용하면 SELECT문으로 한 번에 여러 행의 데이터를 추가할 수 있다.

 

INSERT문에서 서브쿼리를 사용할 때 유의할 점 

 

1. VALUES절은 사용하지 않는다.

2. 데이터가 추가되는 테이블의 열 개수와 서브쿼리의 열 개수가 일치해야 한다.

3. 데이터가 추가되는 테이블의 자료형과 서브쿼리의 자료형이 일치해야 한다.

 

 

 

728x90
Comments