Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- Concurrently
- JS 개념
- 리액트
- Do it 자바스크립트 + 제이쿼리 입문
- intellij
- 모두의 파이썬
- DB Browser
- 노드에 리액트 추가하기
- Colaboratory 글자 깨짐
- intllij 내 Bean을 찾지 못해서 발생하는 오류
- 자바스크립트
- 모던자바스크립트
- 따라하며 배우는 노드 리액트 기본 강의
- Spring-Framework
- props
- You are importing createRoot from "react-dom" which is not supported. You should instead import it from "react-dom/client"
- ReactDOM.render is no longer supported in React 18. Use createRoot instead
- 거북이 대포 게임
- Python
- 계산맞추기 게임
- 인프런
- spring-boot
- 타자 게임 만들기
- 웹 게임을 만들며 배우는 리액트
- node.js로 로그인하기
- googleColaboratory
- vs code 내 node
- react오류
- node.js 설치
- react
Archives
- Today
- Total
프로그래밍 삽질 중
SQL PL/SQL 설명 및 예제 본문
※ PL/SQL
- 데이터베이스 응용 프로그램을 작성 시 사용하는 오라클의 SQL 전용 언어
- SQL문에 변수, 제어, 입출력 등 기능 추가하여 SQL 내 처리하기 어려운 문제 해결
※ PL/SQL 기본단위
1) DECLARE(선언부) : 실행에 사용될 변수, 상수, 커서 등 선언
2) BEGIN(실행부) : WHRJSANS, QKSQHRANS, DML 함수 등 정의
3) EXCEPTION(예외 처리부) : PL/SQL 실행 도중 발생하는 오류 해결
※ 변수의 자료형
- 특정 테이블의 열의 자료형이나 하나의 행 구조를 참조하는 자료형
- %TYPE : 열 참조
- %ROWTYPE : 행 참조
- 변수이름 테이블이름.열이름%TYPE
※ 예외처리
- 예외 발생 시 메세지를 입력자가 원하는 대로 바꿈
- EXCEPTION : 예외 처리 영역
[예제들] - PL/SQL
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 | --HELLO PL/SQL 출력 SET SERVEROUTPUT ON; BEGIN DBMS_OUTPUT.PUT_LINE('Hello, PL/SQL'); END; -- 기본 변수 선언과 사용 -- 변수이름 자료형:= 값 또는 표현식; DECLARE V_EMPNO NUMBER(4):=7788; V_ENAME VARCHAR2(10); BEGIN V_ENAME:='CONAN'; DBMS_OUTPUT.PUT_LINE('V_EMPNO:' || V_EMPNO); DBMS_OUTPUT.PUT_LINE('V_ENAME:' || V_ENAME); END; -- 상수 정의하기 : CONSTANT DECLARE V_TAX CONSTANT NUMBER(1):=5; BEGIN DBMS_OUTPUT.PUT_LINE('V_TAX:' || V_TAX); END; --변수의 기본값 지정하기 : DEFAULT DECLARE V_DEPTNO NUMBER(2) DEFAULT 10; BEGIN DBMS_OUTPUT.PUT_LINE('V_DEPTNO:' || V_DEPTNO); END; --변수에 NULL값 저장 막기 : NOT NULL DECLARE V_DEPTNO NUMBER(2) NOT NULL:=10; BEGIN DBMS_OUTPUT.PUT_LINE('V_DEPTNO:' || V_DEPTNO); END; -- 상수 정의하기 DECLARE V_TAX CONSTANT NUMBER(1):=5; BEGIN DBMS_OUTPUT.PUT_LINE('V_TAX:' || V_TAX); END; ------------------------------------------------------ --변수의 자료형 1) (열 참조 : %TYPE, 행 챀조 : %ROWTYPE) DECLARE V_DEPTNO DEPT.DEPTNO%TYPE:=50; BEGIN DBMS_OUTPUT.PUT_LINE('V_DEPTNO:' || V_DETPNO); END; --변수의 자료형 2) DECLARE V_DEPT_ROW DEPT%ROWTYPE; BEGIN SELECT DEPTNO, DNAME, LOC INTO V_DEPT_ROW FROM DEPT WHERE DEPTNO = 40; DBMS_OUTPUT.PUT_LINE('DEPTNO :' || V_DEPT_ROW.DEPTNO); DBMS_OUTPUT.PUT_LINE('DNAME :' || V_DEPT_ROW.DNAME); DBMS_OUTPUT.PUT_LINE('LOC :' || V_DEPT_ROW.LOC); END; -- CASE 조건문 DECLARE ismale NUMBER(1); BEGIN ismale:=&성별; CASE ismale WHEN 1 THEN DBMS_OUTPUT.PUT_LINE('남자'); WHEN 2 THEN DBMS_OUTPUT.PUT_LINE('여자'); ELSE DBMS_OUTPUT.PUT_LINE('Third Thing'); END CASE; END; --LOOP(1) DECLARE i NUMBER:=0; BEGIN LOOP DBMS_OUTPUT.PUT_LINE(i); IF i>10 THEN EXIT; END IF; i:=i+1; END LOOP; END; --LOOP(2) DECLARE i NUMBER:=0; BEGIN LOOP DBMS_OUTPUT.PUT_LINE(i); EXIT WHEN i>10; i:=i+1; END LOOP; END; --WHILE DECLARE i NUMBER:=0; BEGIN WHILE i<10 LOOP DBMS_OUTPUT.PUT_LINE(i); i:=i+1; END LOOP; END; --FOR DECLARE i NUMBER:=0; BEGIN FOR i IN REVERSE 1..10 LOOP DBMS_OUTPUT.PUT_LINE(i); END LOOP; END; --예외처리 DECLARE V_NUM NUMBER; BEGIN V_NUM:=10/&분모; EXCEPTION WHEN ZERO_DIVIDE THEN DBMS_OUTPUT.PUT_LINE('0이외의 다른 값을 입력하시오'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('딴 오류 발생..'); END; SELECT * FROM SALGRADE; | cs |
'과거 프로그래밍 자료들 > SQL(Oracle)' 카테고리의 다른 글
JDBC 설명 및 예제 1) (0) | 2021.03.25 |
---|---|
SQL 커서 설명 및 예제 (0) | 2021.03.24 |
SQL 트랜잭션, 세션, 사용자 관리 설명 및 예제 (0) | 2021.03.23 |
SQL 객체종류(인덱스, 뷰, 시퀀스 등) 설명 및 예제 (0) | 2021.03.23 |
SQL 예제 문제(1) (0) | 2021.03.23 |