공부/DB

[Oracle] DML(Data Manipulation Language) 사용법

students 2022. 9. 9. 02:06

오라클 데이터 입력(INSERT),  조회(SELECT), UPDATE(수정), DELETE(삭제)


 

테이블 생성


DML( INSERT, SELECT, UPDATE, DELETE ) 하기 전에 우선 데이터를 담을 테이블이 존재해야 데이터를 조작 할 수 있다.

아래와 같이 EXAMPLE 테이블을 생성해 보자.

CREATE TABLE EXAMPLE(
	example_no NUMBER,
    example_name VARCHAR2(10),
    example_age NUMBER
);

 

테이블 예제 생성 완료 후 아래 예제를 실행 시켜보자.

 

데이터 입력( INSERT )


생성된 테이블에 데이터를 입력해 보자. 데이터를 입력 하기 위해서는 아래와 같은 형식으로 데이터를 넣어야 한다.

INSERT INTO 테이블명 (컬럼1, 컬럼2, 컬럼3 ...) VALUES('값1','값2','값3'...)

 

이제 예제를 써보자.

INSERT INTO EXAMPLE(example_no, example_name, example_age) VALUES ('1', '이름', '15');

INSERT INTO EXAMPLE(example_no, example_name, example_age) VALUES ('2', '이름2', '20');

데이터를 입력하면 아래와 같은 메시지가 출력 된다.

1 row created.
1 row created.

데이터를 두 번 입력 하기 때문에 메시지가 두 번 출력 된다.

 

데이터 조회( SELECT )


 

앞에서 입력 된 데이터를 조회 해보자.

모든 데이터를 조회 하고 싶을 때는 아래와 같이 한다.

 SELECT * FROM 테이블명 ;

 

아래 예제를 실행 해보면 우리가 입력 한 데이터 2개가 모두 조회 되는 것을 확인 할 수 있다.

SELECT * FROM EXAMPLE;

 

데이터를 모두 조회 하고 싶지 않고 특정한 조건에 맞는 데이터를 조회 하고 싶을떄 WHERE를 사용하여 데이터를 조회 할 수 있다.

SELECT * FROM 테이블명 WHERE 컬럼1 = '값1';

 

아래 예제를 실행 해보면 example_no가 1인 데이터 하나만 조회 되는 것을 확인 할 수 있다.

SELECT * FROM EXAMPLE WHERE example_no = '1';

 

데이터 수정 (UPDATE)

 


 

입력 된 데이터를 수정해 보자 수정 하는 방법은 아래와 같이 UPDATE 다음에 수정할 테이블 입력, SET 다음에

수정 할 컬럼 입력 = '수정 할 값', WHERE 수정 할 대상 조건 -----> 조건을 주지 않으면 모든 데이터가 수정 된다.

UPDATE 테이블명 SET 컬럼2 = '수정할 값' WHERE 컬럼1 = '값1'

example_no가 1인 데이터의 example_name을 student로 바꾸는 예제이다.

UPDATE EXAMPLE SET example_name='student' WHERE example_no= '1';

데이터를 수정하면 아래와 같은 메시지가 출력 된다.

1 row updated.

데이터 수정 후에 아래와 같이 조회 하면 이름이 이름에서 student로 바뀐 것을 확인 할 수 있을 것이다.

SELECT example_name FROM EXAMPLE WHERE example_no=1;

 

데이터 삭제( DELETE )


입력된 데이터를 삭제해보자 DELETE 다음에 삭제할 데이터가 있는 테이블 지정, WHERE 다음에 삭제할 데이터 조건을 입력 한다.

DELETE 테이블명 WHERE 컬럼1 = '값1'

 

다음 예제를 실행시키면 example_no가 1인 데이터를 삭제한다

DELETE EXAMPLE WHERE example_no = 1;

 

데이터를 삭제하면 아래와 같은 메시지가 출력 된다.

1 row deleted.

데이터를 삭제 하고 다음과 같이 ID가 1인 것을 조회를 하면 

 

SELECT * FROM TBL_HUMAN  WHERE ID = '1';

아래와 같이 데이터가 없다는 메세지가 출력 된다.

no rows selected.