전체 방문자
오늘
어제
21종
종이의 코딩 공부방
21종
  • 분류 전체보기 (171)
    • JAVA (64)
    • Springboot (46)
      • 블로그만들기 (45)
    • Database (60)
      • Oracle (60)
    • 프로젝트 3 (CELOVER) (0)
    • 개발서버 구축 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

최근 글

최근 댓글

hELLO · Designed By 정상우.
21종

종이의 코딩 공부방

Database/Oracle

[Oracle] DML(3) - DELETE, TRUNCATE

2023. 8. 1. 11:19

DELETE 
테이블에 기록된 데이터를 삭제하는 구문 (한 행 단위로 삭제됨)

[표현식]
DELETE FROM 테이블명
[WHERE 조건;] --> WHERE 조건 제시 안하면 전체 행 다 사라짐

 

테이블에 있는 모든 데이터 지우기

DELETE FROM EMPLOYEE;

 

차은우 사원의 데이터 지우기

DELETE FROM EMPLOYEE
WHERE EMP_NAME = '차은우';

 

데이터를 삭제할때도 해당 컬럼이 부모데이로 사용되는 경우 삭제되지 않는다

-- DEPT_ID가 D1인 부서를 삭제 (DEPT_ID)는 부모키
DELETE FROM DEPARTMENT
WHERE DEPT_ID = 'D1';
-- ORA-02292: integrity constraint (KH.SYS_C007215) violated - child record found
-- 외래키 제약 조건
-- D1의 값을 가져다 쓰는 자식데이터가 있기 때문에 삭제가 안됨!!

TRUNCATE

테이블의 전체 행을 삭제할 때 사용되는 구문
--> DELETE보다 수행속도가 빠름
별도의 조건 제시 불가, ROLLBACK 불가하다

[표현식] 
TRUNCATE TABLE 테이블명;
TRUNCATE TABLE EMP_SALARY;
ROLLBACK; -- 롤백안된다..
    'Database/Oracle' 카테고리의 다른 글
    • [Oracle] DDL_실습문제
    • [Oracle] DDL(2) - ALTER, DROP
    • [Oracle] DML(2) - UPDATE
    • [Oracle] 테이블 복사하기
    21종
    21종
    코딩 공부한 것 정리하려고 만든 블로그

    티스토리툴바