김갱환
맨땅에 코딩
김갱환
전체 방문자
오늘
어제
  • 분류 전체보기 (239)
    • ⁂ 맨땅에 코딩 (11)
      • : Story (3)
      • : MiniProject 'MyWeb' (1)
      • : Final Project (5)
      • : Josa-Moa 한국어 조사 처리 프로젝트 (1)
    • —————Frontend——————————————.. (0)
    • ⁂ HTML (10)
      • : 기본 익히기 (10)
    • ⁂ CSS (15)
      • : 기본 익히기 (15)
    • ⁂ Java Script (32)
      • : 기본 익히기 (28)
      • : 자바스크립트 라이브러리 (1)
      • : 연습 문제 (3)
    • ⁂ jQuery (11)
      • : 기본 익히기 (11)
    • ⁂ Bootstrap (3)
      • : 기본 익히기 (3)
    • ⁂ TailWind CSS (1)
    • ⁂ AJAX (5)
      • : 기본 익히기 (5)
    • ⁂ Vue.js (3)
      • : 기본 익히기 (3)
    • —————DB : Data Base————————.. (0)
    • ⁂ Oracle DB (27)
      • : 기본 익히기 (24)
      • : 연습 문제 (3)
    • ⁂ MyBatis Framework (15)
      • : 기본 익히기 (15)
    • —————Backend———————————————.. (0)
    • ⁂ Java (62)
      • : 기본 익히기 (42)
      • : JDBC - Java DataBase Conn.. (4)
      • : Crawling (2)
      • : 독학으로 공부하기(과거) (11)
      • : 연습문제 (3)
    • ——————Web————————————————— (0)
    • ⁂ JSP (28)
      • : 기본 익히기 (28)
    • ⁂ Spring FrameWork (15)
      • : Legacy Project (1)
      • : 기본 익히기(Boot 기반) (14)
    • ——————————————————————— (0)
    • ⁂ Error Note (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 연산자 #기본연산자 #코딩 #자바 #독학 #자바공부 #자바연산자
  • 객체지향프로그래밍
  • httperror
  • 자바공부
  • 개발자
  • 백앤드
  • 코딩 #코딩공부 #프론트앤드 #백앤드 #풀스택개발자
  • http에러메세지
  • HTML공부
  • 프론트앤드
  • 코딩 #코딩공부 #상수 #리터럴 #형변환 #개발자 #자바 #자바공부 #자바독학
  • 코딩공부
  • 코딩
  • 자바
  • web.xml수정
  • 풀스택
  • 코딩공부 #코딩 #자바 #자바독학 #자바공부 #개발자 #프론트앤드 #백앤드 #풀스택
  • ErrorPage
  • 코딩공부 #자바공부
  • 비트연산자 #코딩공부 #자바공부 #코딩 #자바 #프로그래밍 #개발자

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
김갱환

맨땅에 코딩

⁂ Oracle DB/: 기본 익히기

[Oracle] #6-4 프로시져(PL/SQL (Procedural Language))

2022. 8. 30. 15:19

1. PL/SQL?

 

 프로시져란 DB 안에서 좀 더 다이나믹하게 데이터를 다루게 도와주는 기능이다.

 프로시져는 절차적인 데이터베이스 프로그래밍 언어이며 변수, 조건문, 반복문을 더 다양하게 사용할 수 있게 해준다.

 (본격적으로 DB로 프로그래밍 하기..)

 

 더 깊숙하고 고급적인 단계를 배우려하지 않으려 한다.

 기본적인 개념만 잡고 가려하니 어렵게 생각하지 않고 접근해보자.

 

 우선 프로시져를 사용하기 위해선 콘솔창에 출력시키기 위한 아래의 사전 코드가 필요하다.

set serveroutput on;

 

 

2. PL/SQL 기본 문법

1) 변수 선언

 declare -- create는 저장
    -- 변수 선언
    a number := 3;
    b number := 5;
 begin
    -- 콘솔창 출력
    dbms_output.put_line('* 실행 결과 *');
    dbms_output.put_line(a);
    dbms_output.put_line(b);
    dbms_output.put_line(a+b);
    dbms_output.put_line(a || '+' || b || '=' || (a+b) );
 end;

 세미콜론은 무시하고 declare부터 end까지 전체 영역을 잡아서 run을 시키면 출력창에 반영된다.



2) 조건문

 declare
    -- 성적 프로그램
    uname   varchar2(50) := '무궁화';
    kor     number := 100;
    eng     number := 95;
    mat     number := 80;
    aver    number := (kor+eng+mat)/3;
    grade   varchar2(10) := NULL;

 begin
    if aver>=90 then grade:='A';
    elsif aver>=80 then grade:='B';
    elsif aver>=80 then grade:='C';
    elsif aver>=80 then grade:='D';
    else grade:='F';
    end if;

    -- 출력
    dbms_output.put_line('* 실행 결과 *');
    dbms_output.put_line('이름 : ' || uname);
    dbms_output.put_line('국어 : ' || kor);
    dbms_output.put_line('영어 : ' || eng);
    dbms_output.put_line('수학 : ' || mat);
    dbms_output.put_line('평균 : ' || round(aver,2));
    dbms_output.put_line('학점 : ' || grade);
    
 end;




3) 반복문

declare
    -- 구구단 출력
    dan number := 4;
    i   number default 0;
    
begin
    while i<10 loop
        i:=i+1;
        exit when i=10;
        dbms_output.put_line(dan || '*' || i || '=' || (dan*i));
    end loop;
    
end;

 

 

 

3. 프로시저 생성, 삭제, 호출

1) 프로시저 생성
형식) create or replace  procedure 프로시저명

-- sp_test 프로시저 생성
create or replace procedure sp_test
is
begin
    dbms_output.put_line('sp_test 프로시저 호출');
end;



2) 프로시저 호출
형식) execute 프로시저명



3) 프로시저 삭제
형식) drop  procedure 프로시저명

저작자표시 비영리 동일조건 (새창열림)

'⁂ Oracle DB > : 기본 익히기' 카테고리의 다른 글

[Oracle] #6-5 인덱스(index)  (0) 2022.08.30
[Oracle] #6-3 뷰(View)  (0) 2022.08.30
[Oracle] #6-2 계정 생성하기(dbf 파일 만들기, grant)  (0) 2022.08.30
[Oracle] #6-1 SQL Developer로 CSV파일 가져오기  (0) 2022.08.29
[Oracle] #5-3 rownum으로 페이징하기  (0) 2022.08.29
    '⁂ Oracle DB/: 기본 익히기' 카테고리의 다른 글
    • [Oracle] #6-5 인덱스(index)
    • [Oracle] #6-3 뷰(View)
    • [Oracle] #6-2 계정 생성하기(dbf 파일 만들기, grant)
    • [Oracle] #6-1 SQL Developer로 CSV파일 가져오기
    김갱환
    김갱환
    코딩의 코자도 모르는 이의 공부 기록장

    티스토리툴바