일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동적계획법
- 컨디션 변수
- 렌더링 파이프라인
- 백준
- 디자인패턴
- 그리디 알고리즘
- 알고리즘
- 병행성
- 그리디알고리즘
- 자료구조
- 멀티쓰레드
- DirectX 12
- 다이나믹 프로그래밍
- 쓰레드
- 멀티프로세서
- 락
- directx
- DirectX12
- 영속성
- 다이나믹프로그래밍
- 운영체제
- OS
- 타입 객체
- Direct12
- 병행성 관련 오류
- I/O장치
- 스케줄링
- 파일시스템 구현
- 프로그래머스
- codility
- Today
- Total
목록DataBase/Oracle (15)
기록공간
PL/SQL 의 패키지는 관계되는 타입, 프로그램 객체 서브 프로그램(프로시저, 함수 등)을 논리적으로 묶어놓은 것이다. 오라클 내부에서 제공하는 패키지의 대표적인 예로는 DBMS_OUTPUT을 들 수 있다. 서로 유사한 업무에 사용되는 여러 개의 프로시저와 함수를 하나의 패키지로 만들어 관리함으로써 향후 유지보수가 편리하고 전체 프로그램을 모듈화 할 수 있는 장점이 있다. 패키지는 명세부(PACKAGE SPECIFICATION)와 몸체부(PACKAGE BODY)로 구성되어 있으며, 명세 부분에는 TYPE, CONSTRAINT, VARIABLE, EXCEPTION, CURSOR, SUBPROGRAM 이 선언되고 몸체 부분에는 이들의 실제 내용이 존재한다. 호출할 때에는 [ 패키지명.프로시저명 ] 형식의 ..
TRIGGER의 사전적인 의미를 살펴보면 [ 방아쇠, 촉발시키다, 야기하다, 유발하다 ] 라고 나온다. 이러한 의미처럼 트리거(TRIGGER)란 DML(Data Manipulation Language) 작업 즉, [ INSERT, UPDATE, DELETE ] 작업이 일어날때 자동적으로 실행되는(유발되는, 촉발되는) 객체이다. (이와 같은 특징을 강조하여 DML TRIGGER 라고 부르기도 한다) 트리거는 무결성 뿐만 아니라 다음과 같은 작업들에 널리 사용된다. 자동으로 파생된 열 값 생성 잘못된 트랜잭션 방지 복잡한 보안 권한 강제 수행 분산 데이터베이스 노드 상에서 참조 무결성 강제 수행 복잡한 업무 규칙 강제 적용 투명한 이벤트 로깅 제공 복잡한 감사 제공 동기 테이블 복제 유지관리 테이블 액세스 ..
오라클에서는 하나의 레코드가 아닌 여러 레코드로 구성된 작업 영역에서 SQL 문을 실행하고, 그 과정에서 발생한 정보를 저장하기 위해 커서(CURSOR)를 사용하며, 커서에는 암시적인 커서와 명시적인 커서가 있다. 암시적 커서는 모든 SQL 문에 존재하며 SQL 문 실행 시 오직 하나의 행(ROW)만 출력하게 된다. 그러나 SQL문을 실행한 결과물(RESULT SET)이 여러 행(ROW)으로 구성된 경우 커서(CURSOR)를 명시적으로 선언해야 여러 행(ROW)을 다룰 수 있다. 커서를 이용하여 테이블 내에 여러 행에 접근 가능한 방법은 마치 JAVA에서 FOR EACH 구문과 비슷한 느낌이 든다. 기본적인 형식 및 구조는 다음과 같다. -- 커서 생성 CURSOR 커서이름 IS SELECT 컬럼명1, ..
PL/SQL 에서 가장 대표적인 구조인 스토어드(Stored) 프로시저는 개발자가 자주 작성해야 하는 업무의 흐름을 미리 작성하여 데이터 베이스 내에 저장해 두었다가 필요할 때 마다 호출하여 실행할 수 있도록 처리해주는 구문이다. 기본적인 형식 및 구조는 다음과 같다. CREATE [OR REPLACE] PROCEDURE 프로시저명 [ ( 매개변수 IN 데이터타입 -- 입력 파라미터 (필수 X) , 매개변수 OUT 데이터타입 ) -- 출력 파라미터 (필수 X) , 매개변수 INOUT 데이터타입 -- 입출력 파라미터 (필수 X) ) ] IS -- 선언 구문 [주요 변수 선언;] BEGIN -- 실행 구문 ... [EXCEPTION] -- 예외 처리 구문 END; -- ※ [] 는 생략이 가능 FUNCTIO..
PL/SQL 함수란 하나 이상의 PL/SQL 문으로 구성된 서브루틴으로 코드를 다시 사용할 수 있도록 캡슐화 하는데 사용된다. 오라클에서는 오라클에 정의된 기본 제공 함수를 사용하거나 직접 스토어드(Stored) 함수를 만들 수 있다. (-> 사용자 정의 함수) 이 사용자 정의 함수는 시스템 함수처럼 쿼리에서 호출하거나 저장 프로시저처럼 EXECUTE 문을 통해 실행 할 수 있다. 기본 형식은 다음과 같다. CREATE [OR REPLACE] FUNCTION 함수명 [ ( 매개변수명1 자료형 , 매개변수명2 자료형 ) ] RETURN 데이터타입 IS -- 주요 변수 선언 BEGIN -- 실행문; ... RETURN 값; [EXCEPTION] -- 예외 처리 구문; END; 사용자 정의 함수는 IN 파라미..
PL/SQL 이란? PL/SQL (Procedural Laguage Extension to SQL)은 프로그래밍 언어의 특성을 가지는 SQL의 확장이며 데이터 조작과 질의 문장은 PL/SQL 의 절차적 코드 안에 포함된다. 즉, PL/SQL을 사용하면 SQL로 할 수 없는 절차적 작업이 가능하다. 여기서 절차적 이라는 단어가 가지는 의미는 어떤 것이 어떤 과정을 거쳐서 어떻게 완료되는지 그 방법을 정확하게 코드에 기술한다는 것을 의미한다. PL/SQL은 절차적으로 표현하기 위해 변수를 선언할 수 있는 기능, 참과 거짓을 구별할 수 있는 기능, 실행 흐름을 컨트롤 할 수 있는 기능 등을 제공한다. 형식 및 구조 PL/SQL은 블럭 구조로 되어 있으며, 블럭은 선언 부분, 실행 부분, 예외 처리 부분의 세 ..
뷰(VIEW) 란? 뷰란 이미 특정한 데이터베이스 내에 존재하는 하나 이상의 테이블에서 사용자가 얻기 원하는 데이터들만을 정확하고 편하게 가져오기 위하여 사전에 원하는 컬럼들만을 모아서 만들어놓은 가상의 테이블이다. 뷰의 사용에는 편의성 및 보안에 목적이 있다. 가상의 테이블이란, 뷰가 실제로 존재하는 테이블(객체)이 아니라 하나 이상의 테이블에서 파생된 또 다른 정보를 볼 수 있는 방법이며 그 정보를 추출해내는 SQL 문장이라고 볼 수 있다. 기본 형식 및 구조는 다음과 같다. -- [] 안에 있는 것들은 생략 가능 CREATE [OR REPLACE] VIEW 뷰이름 [ (ALIAS[, ALIAS, ...]) ] AS 서브쿼리(SUBQUERY) [WITH CHECK OPTION] [WITH READ O..
데이터베이스의 무결성을 보장하기 위해서는 Oracle DBMS에서는 제약조건에 대한 기능을 제공해야 한다. 이제 그 기능을 하는 키워드들에 대해서 알아보도록 하겠다. PRIMARY KEY(PK) PRIMARY KEY 키워드는 테이블에 대한 기본키를 생성한다. 기본키는 각 행을 유일하게 식별하는 컬럼 또는 컬럼의 집합이다. 그렇기 때문에 기본키는 중복될 수 없고 테이블 당 최대 하나만 존재해야한다. 그렇다고 기본키가 반드시 하나의 컬럼으로만 구성되는 것은 아니다. 여러 컬럼이 합쳐져 기본키가 될 수 있다. 기본키는 NULL 일 수 없고, 이미 테이블에 존재하고 있는 데이터를 다시 입력할 수 없도록 처리한다. 내부적으로 UNIQUE INDEX가 자동으로 생성된다. (오라클에서 자체적으로 만든다) 기본 형식 ..