전체 글 49

[Database] Ch10.Dictionary

Dictionary정의관리 데이터테이블로 존재함. 뷰와 테이블 정보 주석으로 설명메타 정보 . 데이터의 데이터저장되는 정보 : View (Read Only) + Tableoracle server 사용자명허가된 권한 role, privilege객체명( table, sequence, view, index 등)감사 정보어느 테이블에 누가 무엇을 했는지 동작 기록테이블 제약조건 constraint테이블 정보와 따로 저장됨오라클이 sys.con$ 테이블에 실제 제약조건 저장함. ( $ 시스템 테이블임을 구분하기 위해 붙임)사용자가 직접 sys.con$ 테이블에 접근할 수 없고, 뷰를 통해 user_constraints 을 통해 확인가능-- 사용자의 제약정보 select * from user_constraints;..

Database 2025.05.11

[Database] Ch11.DDL 데이터 정의어

DDL저장 구조에 대한 명령어DB 구조 명령어DROP테이블 삭제자동 commit 되어 롤백 불가.인덱스까지 삭제됨표현 drop table 테이블명 [cascade constraints] ;cascade constraints 옵션삭제하고자 하는 테이블(A)을 참조하는 다른 테이블(B)의 제약조건을 삭제함A의 PK가 B의 FK로 존재cascade 옵션 있을 때, 자식 테이블에 데이터 삽입 시 부모 테이블의 PK 컬럼이 가진 데이터가 아니어도 삽입 가능A (부모) 테이블이 삭제 되었기 때문.데이터 유무와 무관하게, FK 제약조건 자체가 DROP을 막는다. 제약조건이 있을 때, 자식 테이블에 데이터가 없어도 부모 테이블 삭제 불가.제약조건이 메타 데이터로 존재함.ALTER - 4테이블에 컬럼 추가표현 alter..

Database 2025.05.11

[Database] Ch09. Transaction Control

트랜잭션 TransactionSQL을 여러개 묶어 놓은 것함께 수행되어야 하는 논리적인 업무의 작업 단위ex. 계좌 이체 ( 출금 sql, 입금 sql 로 구성)특징all or nothing트랜잭션 내의 모든 sql문이 성공해야 commit이 되고 그렇지 않으면 트랜잭션의 맨처음 sql 문으로 이동트랜잭션에 많은 sql문이 있는 경우 (작업 단위가 큰 경우) saverpoint를 두고, savepoint 까지만 rollboack(취소)할 수 있음.라이프 사이클 과정트랜잭션 시작DDL, DCL 문이 실행되면 begin transaction 없이도 암묵적으로 트랜잭션 시작트랜잭션 종료 commit, rollbackcommit, rollback 호출해야 트랜잭션이 종료. 리소스 해제됨.DDL, DML 차이 :..

Database 2025.05.06