SQL(20)
-
SQL PL/SQL 프로시저 7_ 패키지 코드실습 및 개발
--상황가정--/*나는 음원회사의 데이터분석업무를 하고있다. 올해의 vip밴드를 고르기 위해작년도의 수상갯수와 좋아요수를 합산하여 가장 높은 수를 기록하는 밴드를 골라야하는데이 작업이 매번 있다보니 이에 대한 패키지를 만들어, 이름을 입력하면 원하는 정보를출력해주는 패키지를 만들고자 한다*/--패키지 출력문--/*밴드명: 출력시 변수 사용 어워드 수:(프로시저) 좋아요 수:(프로시저) 합계: (함수)*/직접 테이블을 만들고 패키지의 출력문대로 출력될 수 있도록 패키지의 코드를 연구해보도록 하자. 로직구성--로직구성--/* 1. 밴드정보 테이블 생성 -이름, 좋아요 수, 어워드 수, 대표곡 2.패키지 로직 -프로시저에서 in파라미터값으로 밴드의 이름을 입력 -입력한 값을 where..
2024.09.24 -
SQL PL/SQL 프로시저 6_ 패키지(패키지 사양, 패키지 본문작성 법)
패키지패키지는 함수, 프로시저, 변수, 상수, 예외 등을 하나의 논리적 단위로 그룹화하여 모듈화된 코드로 묶어놓은 구조이다.패키지는 재사용성을 높이고 코드의 유지 보수성을 향상시키며 특정 기능에 대한 인터페이스와 구현을 분리하여 캡슐화를 지원한다. 패키지의 구조패키지 사양(패키지에 사용될 인터페이스 정의 / 함수, 프로시저, 변수, 상수/ 사용자에게 공개)패키지 본문(사양에서 선언한 함수와 프로시저의 실제구현 / 사용자접근 X) 패키지 사양--서버 on으로 열어주기--set serveroutput on;show serveroutput;--패키지 만들기----패키지 사양--create or replace package mypackageisv_emp_count number;function get_emp_na..
2024.09.24 -
SQL PL/SQL 프로시저 5_ 커서와 커서활용 / 코드연구
CURSOR커서는 SQL 문을 실행했을 때 실행 결과를 가리키는 데이터 구조이며 SQL문을 처리하는 정보를 저장한 메모리 공간을 말한다.커서는 주로 PL/SQL 블록이나 저장 프로시저 내에서 SQL 쿼리의 결과 집합의 행을 참조하고 조작할 수 있는 메커니즘을 제공한다.커서의 종류 . 암시적(암시적) 커서 - Oracle 엔진이 자동으로 생성하는 커서로 주로 단일 SQL 문을 실행할 때 사용한다. . 명시적 커서 - 사용자가 직접 이름을 정의해서 만든 커서를 말한다.커서의 속성 암시적 커서의 속성 - SQL%FOUND: 해당 SQL문에 의해 반환된 행수가 1개 이상이면 true를 리턴한다. - SQL%NOTFOUND: 해당 SQL문에 의해 반환된 행수가 더 이상 없을 경우 tru..
2024.09.23 -
SQL PL/SQL 프로시저 4_ 함수와 함수활용법/ 약간의 코드 연구
함수저장함수는 특정 처리 작업을 자주사용할때 한번에 수행할수 있도록 미리 코드의 로직을 미리 구상하여 만들어놓는다.함수는 반드시 리턴값이 존재하고, 항상 저장하여 사용한다. sql 함수 만들기 -저장함수----서버 on으로 열어주기--set serveroutput on;show serveroutput;create or replace function func_test1(p_no number)return numberas v_no number;beginv_no := p_no +10;return v_no;end;/sql에서 함수를 만들때는 create function 함수명을 사용하며 프로시저와 동일하게 괄호를 사용하여 프로시저를 적는다.함수에는 반드시 리턴값이 존재하기 때문에 파라미터를 정의한 괄호밑에 리턴..
2024.09.23 -
SQL PL/SQL 프로시저 3_ 저장 프로시저의 IN,OUT파라미터
저장프로시저--서버 on으로 열어주기--set serveroutput on;show serveroutput;--저장프로시저--create procedure myproc1isv_empno number(4) := 7788;v_ename varchar2(10);beginv_ename := 'SCOTT';dbms_output.put_line('v_empno' || v_empno);dbms_output.put_line('v_ename' || v_ename);end myproc1;/--저장 프로시저 실행----execute 실행법--execute myproc1;--익명프로시저 실행법--beginmyproc1;end;/프로시저를 저장하여 사용한다는 것은, 자주사용하는 비즈니스 로직을 만들어놓고 반복하여 재사용한다는 ..
2024.09.22 -
SQL PL/SQL 프로시저 2_ 프로시저의 제어문과 반복문
PL/SQL에서 사용할 수 있는 제어문과 반복문 종류단일 if문if~else문다중 if문case when무한 loopwhlieforexitcontinue오라클의 pl/sql에서는 블록안에서 사용할 수있는 제어문과 반복문이 존재한다. 파이썬이나 c언어와는 다르게 오라클에서는 위와같은 제어문 및 반복문을 단독으로 사용할 수 없고 pl/sql의 블록안에서만 사용이 가능하다. 단일 if문--단일if문--declarev_number number :=1;begin if v_number =1 then dbms_output.put_line('v_number는 1입니다.'); end if; dbms_output.put_line('종료');end;/declarev_number number :=10;begi..
2024.09.20