Database/Oracle PLSQL: 26개의 글
-- 조합 데이터 타입의 2가지 종류 -- 1. 레코드 (RECORD) -- 2. 컬렉션 (COLLECTION) -- CURSOR-- 수행하는 SQL문의 결과를 처리하기 위한 메모리영역 -- 1. 암시적 커서: SQL%rowcount와 같은 커서를 말한다. -- 2. 명시적 커서: 메모리를 올려놓고 빈곳에다가 올리고 싶은 데이터를 올린다. -- EMP_CURSOR%FOUND : 커서에서 데이터가 발견되면 TRUE-- EMP_CURSOR%NOTFOUND : 커서에서 데이터가 발견되지 않으면 TRUE 1-2 부서번호를 입력하면 해당 부서번호에 속한 사원들의 사원번호, 이름, 월급을 출력하는 프로시저를 작성하라. SET SERVEROUTPUT ON;CREATE OR REPLACE PROCEDURE PR_TAB..
-- 조합 데이터 타입의 2가지 종류 -- 1. 레코드 (RECORD) -- 2. 컬렉션 (COLLECTION) -- CURSOR-- 수행하는 SQL문의 결과를 처리하기 위한 메모리영역 -- 1. 암시적 커서: SQL%rowcount와 같은 커서를 말한다. -- 2. 명시적 커서: 메모리를 올려놓고 빈곳에다가 올리고 싶은 데이터를 올린다. -- EMP_CURSOR%FOUND : 커서에서 데이터가 발견되면 TRUE-- EMP_CURSOR%NOTFOUND : 커서에서 데이터가 발견되지 않으면 TRUE ########################################################################################### 1-1. 부서번호를 물어보게 하고 부서번호를 ..
SET SERVEROUTPUT ON;ACCEPT P_DEPT_NO PROMPT '정보를 원하는 부서번호를 입력하세요.';DECLARE V_EMP_NO NUMBER(8) := 0; V_EMP_ID VARCHAR2(30); V_EMP_NM VARCHAR2(20); V_DEPT_NO NUMBER(4) := &P_DEPT_NO; V_SAL NUMBER(10) := 0; BEGIN SELECT EMP_NO, EMP_ID, EMP_NM, DEPT_NO, SAL INTO V_EMP_NO, V_EMP_ID, V_EMP_NM, V_DEPT_NO, V_SAL FROM TB_LS_EMP867 WHERE DEPT_NO = V_DEPT_NO; DBMS_OUTPUT.PUT_LINE(V_EMP_NO); DBMS_OUTPUT.PUT..
1-1. 사원번호를 물어보게하고 사원번호를 입력하면 해당 사원의 모든 컬럼의 정보가 EMP745 테이블에 입력되게 하는 PL/SQL을 작성하시오.SELECT * FROM EMP745;-----------------------------------------------------------------------------------------------------SET SERVEROUTPUT ON;ACCEPT P_EMP_NO PROMPT 'EMP745테이블로 복사할 사원번호를 입력하세요' DECLARE V_DEPT_NO NUMBER(4) := 0; V_EMP_NO NUMBER(8) := &P_EMP_NO; V_EMP_NM VARCHAR2(20); V_EMP_ID VARCHAR2(30); V_SAL NUMB..
-- 1. WHILE .. LOOP 을 중첩으로 사용하여 4단 ~7단까지 출력하는 프로시저를 생성해보아라. CREATE OR REPLACE PROCEDURE PR_GUGUDAN_4TO7IS V_OUT_DAN NUMBER(2) := 7; V_IN_DAN NUMBER(2) := 9; i NUMBER(2) := 3; j NUMBER(2) := 0; BEGIN -- 내가 생각하는 while 문 문법과 조금 다르다. WHILE i < V_OUT_DAN LOOP i := i+1; j := 0; DBMS_OUTPUT.PUT_LINE(i); WHILE j < V_IN_DAN LOOP j := j+1; DBMS_OUTPUT.PUT_LINE(j); DBMS_OUTPUT.PUT_LINE( i || '*' || j || ' ..
-- ★☆★☆★ basic loop (FOR LOOP)-- 1.숫자 1부터 20까지 출력하는데 for loop 문으로 구현해서 출력하시오. SET SERVEROUTPUT ON -- default : serveroutput (dbms_output.put_line) 이 OFF 상태이다. BEGIN FOR i IN 1..20 LOOP DBMS_OUTPUT.PUT_LINE('출력숫자 : ' || i ); END LOOP;END; / -- 2. FOR .. LOOP 사용하여 구구단 6단을 출력하시오. DECLARE V_COUNT NUMBER(10) := 0;BEGIN FOR i IN 1..9 LOOP V_COUNT := 6 * i; DBMS_OUTPUT.PUT_LINE ( '6' || ' * ' || i || '..