본문 바로가기
Programing/SQL

[SQL] 데이터 입력(INSERT 문)

by 구루미94 2021. 10. 11.

1. INSERT 구문 1

insert into 테이블명 ( column1, column2, column3, ... )

values (값1, 값2, ...)

1
2
3
4
5
6
7
8
9
10
11
insert into emp03 (emp_id, emp_name, gender, age, hire_date)
values(1'짱구''남성'5'2018-01-01');
 
insert into emp03 (emp_id, emp_name, gender, age, hire_date)
values (2'유리''여성'5'2018-01-01');
 
insert into emp03 (emp_id, emp_name, gender, age, hire_date)
values (3'철수''여성'5'2018-01-01');
 
insert into emp03 (emp_id, emp_name, gender, age, hire_date)
values (4'맹구''남성'5'2018-01-01');
cs

 

- '철수'의 성별을 '여성'으로 넣었는데 아무런 경고 없이 데이터가 잘 들어감.

- 오라클은 철수가 남성인지 여성인지 알지 못하기 때문.

 

오라클이 체크하는 규칙 2가지

- NOT NULL 컬럼에 데이터를 넣지 않은 경우

- 기본 키가 설정된 컬럼에 중복된 데이터를 넣은 경우 

 

2. INSERT 구문 2

insert into 테이블명

values (값1, 값2, ... )

- 컬럼을 명시하지 않았다는 것은 모든 컬럼에 데이터를 넣는다는 것을 의미한다.

 

3. INSERT 구문 3

insert into 테이블명 ( column1, column2, ... )

select 문장 ...

- values 절 대신에 select 문장이 들어가는 형태

- 한 번에 여러 개의 로우를 입력할 수 있다.

 

# insert, update, delete 등의 문장을 실행해 데이터에 변경을 가한 후에는

데이터베이스에 변경 사항을 적용하는 트랜잭션을 처리해야한다.

올바른 데이터를 입력한 뒤에는 COMMIT 문장을 실행하고

입력한 작업을 취소할 때에는 ROLLBACK 문장을 실행한다.

만일 트랜잭션을 처리하지 않으면, 오라클 접속을 해제하고 다시 접속할 때

이전의 데이터는 남아있지 않게 된다.

728x90

'Programing > SQL' 카테고리의 다른 글

[SQL] 데이터 정렬하기  (0) 2021.10.12
[SQL] 조건에 맞는 데이터 조회하기  (0) 2021.10.12
[SQL] SELECT 문의 기본 구문  (0) 2021.10.11
[SQL] 데이터 삭제(DELETE 문)  (0) 2021.10.11

댓글