본문 바로가기

Database/이론

[DB] DML

DML은 데이터 조작어(Data Manupulation Language)라고 하고,

테이블에 데이터를 검색, 삽입, 수정, 삭제 하는데 사용되는 문장을 말합니다.

select, insert, update, delete 등이 있고,

줄여서 CRUD (create read update delete) 라고 합니다.

여기서의 C는 create table의 개념은 아니고

데이터를 만든다는 의미입니다. (insert)

형태는

insert into 테이블명(컬럼명, 컬럼명,...) values (값,값,...);

입니다.

이떄 컬럼의 순서도 변경할 수 있습니다.

컬럼의 값을 모두 넣지 않으면

null값이 들어가게 됩니다.

반면에 Not null을 걸어두게 되면

오류가 발생하게 됩니다.

컬럼의 값들은 가급적이면 값들이 다 들어가 있는 것이 좋습니다.

(컬럼명, 컬럼명,...) 부분을 넣으면 코드가 길어지기 때문에

이 부분을 생략하고 컬럼 순서대로 넣는 방법도 있습니다.

 

insert into snack values(4, '엄마손파이', '롯데', 4000);

 

이런 식으로 생략할 수 있습니다.

 

insert시 번호를 임의로 만들어서 

Primary Key를 설정하곤 했는데

데이터가 무수히 많아지면

번호를 매기기 힘들 것입니다.

그래서 Oracle에서는 Sequence라는 것을 사용해서

번호를 순서에 맞게 자동으로 생성합니다.

Sequence는 테이블 과는 무관합니다.

그런데 insert에 실패해도 sequence값이 올라간다는

단점이 있습니다.

그리고 증가된 값을 다시 내릴 수 없습니다.

그러면 선언하는 법을 알아보겠습니다.

 

create sequence 시퀀스명;

테이블명 뒤에_seq를 붙여주는 문화가 있음

 

create를 사용해서 sequence를 생성할 수 있습니다.

 

drop sequence 시퀀스명;

 

drop을 사용해서 시퀀스를 삭제할 수도 있습니다.

sequence 검색법은 시퀀스명.nextval을 사용해서 가져올 수 있습니다.

 

여기서 잠시 date 자료형을 살펴보면sysdate라는 기능을 사용하면 현재의 날짜 데이터를 가져올 수 있습니다.

그리고 내장함수인 to_date('값', '패턴') 로 특정 날짜를 불러올 수 있는데요.

패턴(대문자) 은  YYYY, MM, DD, AM/PM, HH(12시간), HH24(추천), MI(분), SS(초)

형식입니다.

 

to_date('2025-10-1 17', 'YYYY-MM-DD HH24')

 

 

Read부터는 다음 포스트에서 살펴보겠습니다.

'Database > 이론' 카테고리의 다른 글

[DB] 날짜 함수  (1) 2024.12.27
[DB] Read  (0) 2024.12.26
[DB] Alter  (1) 2024.12.26
[DB] Primary Key  (0) 2024.12.26
[DB] 데이터베이스 용어  (0) 2024.12.23