본문 바로가기

📚Study Note/ORACLE

(44)
[ ORACLE ] CREATE OR REPLACE FUNCTION 함수명() -- ■■■■ FUNCTION(함수) ■■■■■ -- 1. 함수란 하나 이상의 PL/SQL 문으로 구성된 서브루틴으로 -- 코드를 다시 사용할 수 있도록 캡슐화 하는데 사용된다. -- 오라클에서는 오라클에 정의된 기본 제공 함수를 사용하거나 -- 직접 스토어드 함수를 만들 수 있다.(→ 사용자 정의 함수) -- 이 사용자 정의 함수는 시스템 함수처럼 쿼리에서 호출하거나 -- 저장 프로시저처럼 EXECUTE 문을 통해 실행할 수 있다, --2. 형식 및 구조 /* CREATE [OR REPLACE] FUNCTION 함수명 [( 매개변수1 자료형 , 매개변수2 자료형 )] RETURN 데이터타입 IS -- 주요 변수 선언(지역 번수) BEGIN --실행문; ... RETURN 값; [EXCEPTION] --..
[ ORACLE ] 자료형 참조하는 %TYPE 퍼센트타입 │ %ROWTYPE 로우퍼센트타입 -- ● %TYPE 퍼센트타입 -- 1. 특정 테이블에 포함되어 있는 컬럼의 자료형을 참조하는 데이터타입 -- 2. 형식 및 구조 -- 변수명 데이터타입 원래는 이렇게 하지만 -- 변수명 테이블.컬럼명%TYPE [:=초기값]; -- 예를 들어 NAME EMPLOYEES.ENAME%TYPE(NAME 이라는 변수명의 타입을 EMPLOYEES --테이블의 ENAME컬럼의 타입을 가져와서 쓰겠다는 의미) SET SERVEROUTPUT ON; SELECT FIRST_NAME FROM EMPLOYEES; -- ● HR.EMPLOYEES 테이블의 특정 데이터를 변수에 저장 DECLARE --VNAME VARCHAR2(20) VNAME EMPLOYEES.FIRST_NAME%TYPE; BEGIN SELECT FIRST_..
[ ORACLE ] 반복문 3가지 │ LOOP │ WHILE LOOP │ FOR LOOP -- ● 기본 반복문 -- -- LOOP ~ END LOOP; (루프 시작했다 루프 끝났다) -- 1. 조건과 상관없이 무조건 반복하는 구문. -- 2. 형식 및 구조 LOOP -- 실행문; 사이에 실행문 오게 된다. 반복을 해야되는 구문이다. -- EXIT WHEN 조건; 조건이 참인 경우 반복문을 빠져나간다. END LOOP; -- ● 1 부터 100 까지의 수 출력(LOOP 문 활용) DECLARE N NUMBER; BEGIN N := 1; LOOP DBMS_OUTPUT.PUT_LINE(N); EXIT WHEN N>=10; N := N+1; -- N++; N+=1; 자바의 이것들과 같다 END LOOP; END; /* 1 2 3 4 5 6 7 8 9 10 PL/SQL 프로시저가 성공적으로 완료되었습..
[ ORACLE ] PL / SQL -- 1. PL/SQL (Procedual Language extension to SQL) 은 -- 프로그래밍 언어의 특성을 가지는 sql 의 확장이며, -- 데이터 조작과 질의 문장은 pl/sql 의 절차적 코드 안에 포함된다, -- 또한 pl/sql 을 사용하려면 sql로 할 수 없는 절차적 작업이 가능하다. -- 여기에서 절차적 이라는 단어가 가지는 의미는 어떤 것이 어떤 과정을 -- 거쳐 어떻게 완료되는지 그 방법을 정확하게 코드에 기술한다는 것을 의미한다 --2. pl/sql 은 절차적으로 표현하기 위해 변수를 선언할 수 있는 기능, -- 참과 거짓을 구별할 수 있는 기능, -- 실행 흐름을 컨트롤 할 수 있는 기능들을 제공한다, --3. PL/SQL 은 블럭 구조로 되어있으며 -- 블럭은 선언..
[ ORACLE ] DELETE │ VIEW ■DELETE■ 1. 테이블에서 지정된 행(레코드)을 삭제하는 데 사용하는 구문 2. 형식 및 구조 제약조건 때문에 제대로 제거가 안될 수 있다는 것만 염두에 두고 넘어가자 --● EMPLOYEES 테이블에서 직원들의 정보를 삭제한다. -- 단, 부서명이 'IT'인 경우로 한정한다 -- ※ 실제로는 EMPLOYEES 테이블의 데이터가(삭제하고자 하는 대상) -- 다른 테이블(혹은 자기 자신 테이블)에 의해 참조당하고 있는 경우 -- 삭제되지 않을 수 있다는 사실을 염두해야 하며,,, -- 그에 대한 이유도 알아야 한다. -- IT 부서의 부서아이디 구하기 SELECT DEPARTMENT_ID FROM DEPARTMENTS WHERE DEPARTMENT_NAME='IT'; --==>>60 SELECT FI..
[ ORACLE ] UPDATE : 테이블에서 기존 데이터를 변경 + 업데이트 실수를 백업테이블로 다시 수정하기 -- ■■■ UPDATE ■■■ --1. 테이블에서 기존 데이터를 변경하는 구문. -- 2. 형식 및 구조 --UPDATE 테이블명 --SET 컬럼명=변경할 값[, 컬럼명=변경할 값,....] --[WHERE 조건절] SELECT * FROM TBL_SAWON; /* 1002김서현941227223456710/11/052000 1003김아별930308223456799/08/165000 1004이유림960914223456708/02/024000 1005정주희971224223456709/07/152000 1006한혜림971006223456709/07/152000 1007이하이040506423456710/06/051000 1008아이유010325423456712/07/133000 1009정준이9804251234..
[ ORACLE ] DEFAULT 표현식 ■■■ DEFAULT 표현식 ■■■ 1. INSERT 와 UPDATE문에서 사용자가 전달하는 특정 값이 아닌 기본값을 입력하도록 처리할 수 있다. 2. 형식 및 구조 컬럼명 데이터타입 DEFAULT 기본값 3. INSERT 명령 시 해당 컬럼에 입력될 값을 할당하지 않거나 DEFAULT 키워드를 활용하여 기본 값을 입력하도록 할 수 있다. 4. DEFAUT 키워드와 다른 제약(NOT NULL 등) 표기가 같이 오는 경우 DEFAULT 키워드를 먼저 표기(작성)할 것을 권장한다. */ -- ● DEFAULT 표현식 실습 -- 테이블 생성 CREATE TABLE TBL_BOARD (SID NUMBER PRIMARY KEY -- 게시판 테이블 생성 ,NAME VARCHAR2(30) -- 게시물 번호 식별자 (..
[ ORACLE ] NOT NULL(NN:CK:C) ------------------------------------------------------------------------ --■■■ NOT NULL(NN:CK:C) ■■■ -- 1. 테이블에서 지정한 컬럼의 데이터가 NULL을 갖지 못하도록 하는 제약조건 2. 형식 및 구조 ① 컬럼 레벨의 형식 컬럼명 데이터타입 [CONSTRAINT CONSTRAINT명] NOT NULL ② 테이블 레벨의 형식 컬럼명 데이터타입 컬럼명 데이터타입 CONSTRAINT CONSTRAINT명 CHECK(컬럼명 IS NOT NULL) 3. 기존에 생성되어 있는 테이블에 NOT NULL 제약조건을 추가할 경우 ADD 보다 MODIFY 절이 더 많이 사용된다. ALTER TABLE 테이블명 MODIFY 컬럼명 데이터타입 ..