본문 바로가기

수업 내용/[DB] 오라클10

[DB 오라클] 14. 시퀀스 오라클에서는 행을 구분하기 위한 기본 키를 두고 있다. 기본 키는 항상 유일한 값을 가져야 한다. 하지만 이를 사용자가 직접 생성하려면 부담이 크다. 시퀀스는 테이블 내의 유일한 숫자를 자동으로 생성하는 자동 번호 발생기이므로 시퀀스를 기본 키로 사용함으로써 사용자의 부담을 줄일 수 있다. 마치 for문 처럼 증가하며 테이블에 저장된다. start with - 시쿼스 번호의 시작값을 지정할 때 사용된다. incresement by - 연속적인 시퀀스 번호의 증가치를 지정할 때 사용된다. 시작값이 10이고 10씩 증가하는 시퀀스 dept_deptno_seq를 생성한다. create sequence dept_deptno_seq increment by 10 start with 10; 내가 만들어 놓은 시퀀스 .. 2023. 4. 27.
[DB 오라클] 13. 뷰 ( view) 물리적 테이블 근거의 논리적 가상 태이블 실질적으로 데이터를 저장하고 있지 않지만 사용자는 테이블을 사용하는 것과 동일하게 뷰를 사용할 수 있다. 특정 결과를 출력하기 위해 매번 select 문을 입력하기 변거로우니 보다 쉽게 원하는 결과를 얻기 위해 출발한 개념이다. 기본 테이블에서 파생된 객체로서 기본 테이블에 대한 하나의 쿼리문이다. 사용자에게 주어진 뷰를 통해서 기본 테이블을 제한적으로 사용하게 된다. 뷰를 생성하기 위한 실질적인 데이터를 저장하는 테이블을 '기본 테이블'이라고 한다. (실습에서 emp, dept에 해당하는 테이블) 테이블의 내용을 복사할 때 제약조건은 복사되지 않는다. view 를 만들 때는 create view 또는 create or replace view를 사용한다. - 전자.. 2023. 4. 27.
12. 제약조건 데이터 무결성 제약 조건 (Data Integrity Constraint Rule) 테이블에 부적절한 자료가 입력되는 것을 방지하기 위해 테이블을 생성할 때 각 컬럼에 대해서 정의하는 여러가지 규칙 NOT NULL : NULL을 허용하지 않는다 UNIQUE : 중복된 값을 허용하지 않는다. PRIMARY KEY : NULL을 허용하지 않고 중복된 값을 허용하지 않는다. FOREIGN KEY : 참조되는 테이블의 컬럼의 값이 존재하면 허용한다. CHECK : 저장 가능한 데이터 값의 범위나 조건을 지정하여 설정한 값만을 허용한다. FOREIGN KEY란 참조되는 컬럼 (부모 컬럼) 에 존재하는 값만 참조하는 컬럼 (자식 컬럼) 에 사용할 수 있다. 그렇지 않은 경우는 에러 주의) 테이블 단위가 아닌 컬럼 .. 2023. 4. 25.
11. 트랜잭션 (transaction) 트랜잭션 (transaction) 데이터 처리의 한 단위 오라클에서 발생하는 여러개의 SQL 명령문(쿼리)들을 하나의 논리적인 작업 단위로 처리하는 과정 하나의 트랜잭션은 All-or-Nothing 방식으로 처리 여러개의 명령어의 집합이 정상적으로 처리되면 정상 종료, 하나라도 잘못되었다면 전체 취소 데이터의 일관성을 유지하면서 안정적으로 데이터를 복구시키기 위해 도입 ex) 1. 현금인출을 하겠다고 기계에게 알려준다. 2. 현금카드를 넣어서 본인인증을 받는다. 3. 인출할 금약을 선택하면 현금인출기는 돈을 내어준다. 4. 계좌에서 인출된 금액만큼 잔액에서 차감한다. 이러한 과정을 하나의 작업 단위로 묶은 것 트랜잭션 제어를 위한 명령어 commit : 작업을 정상적으로 처리하겠다고 확정하는 명령어, 영.. 2023. 4. 25.