일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 8bit
- set
- Transaction
- 예외처리
- 조회
- 난수
- 16bit
- DB
- Oracle
- DB연동
- Annotaion
- where
- JDBC
- 상속
- InputStream
- swing
- 자바
- statement
- Reader
- 다이얼로그
- select
- stream
- Serializable
- Connection
- java
- driver
- 오라클
- array
- Join
- transient
- Today
- Total
오버플로
[Oracle] delete / truncate / drop 본문
1. delete
- DML
- 테이블에 record를 삭제할 때 사용
- transaction 대상 쿼리 : 삭제된 레코드는 rollback으로 복구할 수 있음
> commit한 data는 rollback 불가
- truncate보다 삭제하는 속도가 느림
- where절에 해당하는 레코드를 삭제 (0~n건 삭제)
- 문법)
-- 해당 테이블의 모든 내용 삭제
delete from 테이블명;
-- 해당 테이블의 특정 레코드를 삭제
delete from 테이블명
where 컬럼명 = 기준값;
-- 학생 테이블의 여자에 해당하는 레코드를 모두 삭제
delete from test_student
where gender = '여';
commit;
select * from TEST_STUDENT;
2. truncate
- DDL
- 테이블의 모든 레코드를 절삭할 때 사용
- 절삭된 레코드는 rollback으로 복구되지 않음
- 문법) truncate table 테이블명;
--학생 테이블의 모든 레코드를 절삭
truncate table test_student;
select * from TEST_STUDENT;
3. drop
- DDL
- 데이터베이스의 객체를 삭제할 때 사용
> table, sequence, view, synonym, index, function 등의 객체와 계정을 삭제할 수 있음
- 문법) drop 삭제할객체 이름;
ex) drop table 테이블명;
- Oracle 11g부터는 삭제된 테이블이 휴지통으로 들어감
* 휴지통 보기 (삭제된 테이블의 목록을 확인할 수 있음) : sqlplus에서 > show recyclebin;
* 테이블 복구 (같은 이름의 테이블이 존재하며 복구되지 않음) : falshback table 테이블명 to before drop;
* 휴지통 비우기 : purge recyclebin;
=> 휴지통이 비워져야 완전삭제!
--학생 테이블 삭제
drop table test_student;
select * from TEST_STUDENT;
-- 삭제완료!
'Oracle' 카테고리의 다른 글
[Oracle] function(함수) (0) | 2021.09.20 |
---|---|
[Oracle] select - where / group by ~ having / order by (0) | 2021.09.19 |
[Oracle] 산술연산자 (0) | 2021.09.16 |
[Oracle] transaction / commit / rollback (0) | 2021.09.14 |
[Oracle] select / alias / update (0) | 2021.09.13 |