이전 시간에 이어서 계속 INSERT를 이야기해보자면..

 

 

INSERT 는 복수 테이블로 원하는 데이터를 전송할 수 있다.

 

EX) 

INSERT ALL
    INTO MYEMP_HIRE VALUES(EMPNO, ENAME, HIREDATE,SAL)
    INTO MYEMP_MGR VALUES (EMPNO, ENAME, MGR)
    SELECT EMPNO, ENAME, HIREDATE, SAL, MGR FROM EMP;
    COMMIT;

 

데이터 정보를 모두 다 입력한 다음 본인이 원하는 값이 제대로 들어갔는 지 무조건 확인하기!

확인 후에 COMMIT 꾸욱~

 

EX) 

INSERT ALL
WHEN SAL > 3000 THEN
INTO MYEMP_HIRE2 VALUES (EMPNO, ENAME, HIREDATE, SAL)
WHEN MGR = 7698 THEN
INTO MYEMP_MGR2 VALUES(EMPNO, ENAME, MGR)
SELECT empno, ename, hiredate, sal, mgr
from emp; *SELECT 부분은 SUBQUERY*

 

EX)

INSERT FIRST

WHEN SAL = 800 THEN

INTO TABLE1 VALUES (EMPNO, ENAME, HIREDATE, SAL)

WHEN SAL < 2500 THEN

INTO TABLE2 VALUES (EMPNO, ENAME, MGR)

SELECT EMPNO, ENAME, HIREDATE, SAL. MGR

FROM EMP;

'DataBase > DML' 카테고리의 다른 글

7/2 트랜잭션(Transaction)  (0) 2021.07.02
7/2 UPDATE, DELETE  (0) 2021.07.02
7/1 SQL DML  (0) 2021.07.01
DML (Data Manipulation Language)

데이터베이스의 테이블에 새로운 데이터를 저장(INSERT) 하거나 삭제(DELETE) 또는 수정(UPDATE) 및 병합(MERGE) 할 때 사용하는 데이터 조작어를 의미한다.

 

INSERT 

테이블에 데이터를 입력하기 위한 데이터 조작어다.

입력하는 방법은 총 두 가지가 있다.

첫 번째, 한번에 하나의 행을 테이블에 입력하는 방법

두 번째, 서브쿼리를 이용하여 한 번에 여러 행을 동시에 입력하는 방법

 

 

EX) 

INSERT INTO DEPT (DEPTNO, DNAME, LOC) 

VALUES (90, '인사과', '서울');

 

 

      INSERT INTO 시작부분

      테이블명

      컬럼명

      컬럼의 데이터 값

 

사용 시 참고사항

- 모든 컬럼을 다 명시할 경우, 입력한 컬럼의 순서대로 VALUE 를 적어야한다.

- 컬럼의 순서 변경이 가능하다. 단, 순서를 변경한 후 컬럼과 컬럼 값을 알맞게 넣어야 한다.

  이를 위해서 컬럼의 세부내용을 볼 필요가 있다. 

  DESC 테이블명 을 입력하면 컬럼의 특징들이 나온다. 이를 참고해서 숫자, 문자열 등을 입력하면 된다.

 

- 컬렴명을 생략할 수 있다. 단, 모든 컬럼의 VALUES 를 다 적을 때만 적용된다.

- NULL 값은 묵시적 또는 명시적으로 입력할 수 있다.

EX) 

1. 묵시적 : INTO 절에서 해당 컬럼명과 값을 생략하면 된다.

ㄴ INSERT INTO  DEPT (DEPTNO, DNAME) VALUES (91, '인사과';

*제약조건이 지정되지 않았다고 가정.

 

2. 명시적 : VALUES절의 컬럼값에 NULL 키워드를 적거나 빈문자열 '' 을 사용하면 된다.

ㄴ INSERT INTO DEPT VALUES (92, '인사과', NULL);

'DataBase > DML' 카테고리의 다른 글

7/2 트랜잭션(Transaction)  (0) 2021.07.02
7/2 UPDATE, DELETE  (0) 2021.07.02
7/2 SQL INSERT  (0) 2021.07.02

+ Recent posts