3. 실행문 작성

 

A. Lexical Unit

§모든 PL/SQL 블록의 기본 구조
§문자, 숫자, , 공백, Return 및 기호를 포함한 문자, 시퀀스
§다음과 같이 분류
§식별자 : v_fname, c_percent
§구분자 : ; , + - * /
§리터럴 : John, 428, True
§주석 : --, /*  */

B. 코드 주석처리

-- 로 처리된 부분

C. PL/SQL 의 SQL 함수

§프로시저문 에서 사용할 수 있는 함수
§Single-row functions
§프로시저문에서 사용할 수 없는 함수
§DECODE
§Group functions

EX)

set serveroutput on

declare

v_desc_size integer(5);

v_desc varchar2(10) := ‘Hello’;

begin

v_desc_size := length(v_desc);

dbms_output.put_line( v_desc_size);

end;

/

D. PL/SQL 표현식에서 시퀀스 사용

§11g 이전

declare

v_new_id number;

begin

select my_seq.nextval into v_new_id from dual ;

END;

§11g

declare

v_new_id number;

begin

v_new_id := my_seq.NEXTVAL ;

END;

E. Data Type 변환

§Implicit Conversion
§Explicit Conversion
§함수 사용
§TO_CHAR
§TO_DATE
§TO_NUMBER
§TO_TIMESTAMP

EX)

1)

declare

v_salary number(6) :=6000;

v_sal_hike varchar2(5) :=‘1000’;

v_total_salary v_salary%type;

begin

v_total_salary := v_salary + v_sal_hike;

dbms_output.put_line(v_total_salary);

end;

/

2)

declare

v_date_of_joining date := ‘02-Feb-2000’;

v_date2 date:= to_date(‘February 02, 2000’,

    ‘Month DD, YYYY’);

begin

dbms_output.put_line(v_date_of_joining);

dbms_output.put_line(v_date2);

end;

/

F. 중첩 블록

§실행 섹션(BEGIN … END)은 중첩 블록을 포함할 수 있다.
§예외처리 섹션은 첩 블록을 포함할 수 있다.

 

EX)

1)

declare

v_father_name varchar2(20) := ‘Patrick’;

v_date_birth date := ’20-Apr-1972’;

begin

  declare

  v_child_name varchar2(20) := ‘Mike’;

    v_date_birth date := ‘12-Dec-2002’;

  begin

    dbms_output.put_line( ‘Father’’s Name : ‘ || v_father_name);

    dbms_output.put_line( ‘Date of Birth : ‘ || v_date_birth);

    dbms_output.put_line( Child’’s Name : ‘ || v_child_name);

  end;

  dbms_output.put_line( ‘Date of Birth : ‘ || v_date_birth);

end;

/

2) 중첩 블록에 수식자 사용

begin <<outer>>

declare

v_father_name varchar2(20) := ‘Patrick’;

v_date_birth date := ’20-Apr-1972’;

begin

  declare

  v_child_name varchar2(20) := ‘Mike’;

    v_date_birth date := ‘12-Dec-2002’;

  begin

    dbms_output.put_line( ‘Father’’s Name : ‘ || v_father_name);

    dbms_output.put_line( ‘Date of Birth : ‘ || outer.v_date_birth);

    dbms_output.put_line( Child’’s Name : ‘ || v_child_name);

    dbms_output.put_line( ‘Date of Birth : ‘ || v_date_birth);

  end;

end;

end outer;

/

G. PL/SQL 의 연산자

§논리적 (AND, OR, NOT)
§산술 ( + - * / )
§연결 ( || )
§연산 순서 제어를 위한 괄호
§지수 연산자(**)
§10**3 = 10*10*10

 

 

 

 

 

 

 

 

 

 

 

 

 

사업자 정보 표시
(주)블루원 | 김홍태 | 서울특별시 용산구 원효로 4가 135 금홍 2빌딩 | 사업자 등록번호 : 106-86-76684 | TEL : 02-3272-7200 | Mail : support_ora@blueone.co.kr | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기

'DB - ORACLE > Oracle DB Admin ' 카테고리의 다른 글

5. PL/SQL 제어구조 작성  (0) 2016.01.03
4. PL/SQL 프로그램의 SQL문  (0) 2016.01.03
2. PL/SQL 변수 선언  (0) 2016.01.03
1. PL/SQL 소개  (0) 2016.01.03
오라클 시노님(Synonym)  (0) 2016.01.03

+ Recent posts