DB

·DB/Oracle
저장 서브프로그램(stored subprogram)1. 개념PL/SQL 블록은 작성한 내용을 한 번 실행하는 데 사용PL/SQL 블록은 이름이 정해져 있지 않아서 익명 블록이라고 한다익명 블록은 오라클에 저장되지 않기 때문에 한 번 실행한 후에 다시 실행하려면 PL/SQL 블록을 다시 작성하여 실행해야 한다 2. 특징여러 번 사용할 목적으로 이름을 지정하여 오라클에 저장해 두는 PL/SQL 프로그램저장할 때 한 번 컴파일 한다오라클에 저장하여 공유할 수 있어서 메모리, 성능, 재사용성 등 여러 면에서 장점이 있다대표적인 구현 방식은 프로시저, 함수, 패키지, 트리거이다  프로시저특정 처리 작업을 수행하는데 사용하는 저장 서브프로그램파라미터를 사용할 수도 있고 사용하지 않을 수도 있다1. 파라미터를 사용하..
·DB/Oracle
PL/SQL (Procedural Language extension to SQL)1. PL/SQL (Procedural Language extension to SQL)SQL만으로는 구현이 어렵거나 구현 불가능한 작업을 수행하기 위해 오라클에서 제공하는 프로그래밍 언어변수, 조건, 반복 처리 등 다양한 기능을 사용 가능  2. 블록(Block)PL/SQL은 데이터베이스 관련 특정 작업을 수행하는 명령어와 실행에 필요한 여러 요소를 정의하는 명령어 등으로 구성된다이러한 명령어들을 모아 둔 PL/SQL 프로그램의 기본 단위를 블록이라고 한다  3. 형식DECLARE선언부 - 변수, 상수, 커서 등을 선언 - 생략 가능BEGIN실행하는 명령어EXCEPTION예외처리 - 생략 가능END;DECLARE, BE..
·DB/Oracle
SYNONYM 개념오라클 객체(테이블, 뷰, 시퀀스, 프로시저)에 대한 대체 이름(Alias)Synonym은 Object가 아니라 Object에 대한 직접적인 참조이다데이터베이스의 투명성을 제공하기 위해서 사용 한다다른 유저의 객체를 참조할 때 많이 사용 한다객체의 긴 이름을 짧게 만들어 SQL 코딩을 단순화 할 수 있다객체의 실제 이름, 소유자, 위치를 감추기 때문에 데이터베이스의 보안을 유지할 수 있다  SYNONYM 종류Private Synonym : 전용 Synonym은 특정 사용자만 사용 가능Public Synonym : 공용 Synonym은 사용자 그룹이 소유하면 그 데이터베이스에 있는 모든 사용자가 공유  SYNONYM 형식CREATE [PUBLIC] SYNONYM 시노님이름 FOR 객체이름..
·DB/Oracle
VIEW 개요다른 테이블이나 뷰에 포함된 맞춤표현(virtual table)join 하는 테이블의 수가 늘어나거나 질의문이 길고 복잡해지면 작성이 어려워지고 유지보수가 어려울 수 있다이럴 때는 스크립트를 만들어두거나 stored query를 사용해서 데이터베이스 서버에 저장해두면 필요할 때마다 호출해서 사용할 수 있다뷰와 테이블의 차이 : 뷰는 실제로 데이터를 저장하고 있지 않다베이스테이블(Base table) : 뷰를 통해 보여지는 실제테이블선택적인 정보만 제공 가능  VIEW 형식create [or replace][force|noforce] view 뷰이름 [(alias [,alias,... ..)]as 서브쿼리[with check option [constraint 제약조건이름]][with read ..
·DB/Oracle
테이블 생성1.  구문create table 테이블명(컬럼명1 컬럼타입  [제약조건],                            컬럼명2 컬럼타입  [제약조건],.....); 문자로 시작(30자이내) : 영문 대소문자, 숫자, 특수문자( _ , $ , # ), 한글중복되는 이름은 사용 안됨예약어(create, table, column등)은 사용할 수 없다  2.  자료형number : number(전체자리, 소수이하), number → 숫자형(가변형)int : 정수형 숫자(고정형)varchar/varchar2 : 문자, 문자열(가변형) → 최대 4000byte -- MySQL 에서는 VARCHAR만 사용 가능(CHAR, VARCHAR2 안됨)char : 문자, 문자열(고정형) → 2000byted..
·DB/Oracle
하나의 쿼리에 다른 쿼리가 포함되는 구조( )로처리   단일 행 서브쿼리(단일 행 반환) :  > , =, (!=)Main QuerySub  Query      ----->   1개결과    다중 행 서브쿼리(여러 행 반환) : in, any, allMain QuerySub Query      ----->   여러 개의 결과any : 비교 대상 중 최대값보다 작음> any : 비교 대상 중 최소값보다 큼   (ex. 과장직급의 급여를 받는 사원조회)=  any  : in 연산자와 동일  all   : 비교 대상 중 최솟값보다 작음>  all   : 비교 대상 중 최대값보다 큼 (ex. 모든과장들의 직급보다 급여가 많은 사원조회)   상관쿼리(correlated subquery)EXIST 연산자는 하위 쿼..
p3chaeyeon
'DB' 카테고리의 글 목록