DataScience
article thumbnail
Published 2022. 12. 14. 13:41
PL/SQL 프로시저 IN, OUT, IN OUT 차이 SQL
728x90
--프로시저 선언
CREATE OR REPLACE PROCEDURE my_INOUT_proc
(
  p_var1 VARCHAR2,
  p_var2 OUT VARCHAR2,
  p_var3 IN OUT VARCHAR2
)
IS
BEGIN
  DBMS_OUTPUT.PUT_LINE('p_var1 = ' || p_var1);
  DBMS_OUTPUT.PUT_LINE('p_var2 = ' || p_var2);
  DBMS_OUTPUT.PUT_LINE('p_var3 = ' || p_var3);
  p_var2 := 'A2';
  p_var3 := 'B2';
END;
DECLARE
  v_var1 VARCHAR2(100) := 'A';
  v_var2 VARCHAR2(100) := 'B';
  v_var3 VARCHAR2(100) := 'C';

BEGIN
  my_INOUT_proc(v_var1, v_var2, v_var3);
  DBMS_OUTPUT.PUT_LINE ('v_var2 = ' || v_var2);
  DBMS_OUTPUT.PUT_LINE ('v_var3 = ' || v_var3);
END;​

p_var1은 IN, A를 입력했고 그대로 출력

p_var2은 OUT , B 를 입력했지만 아무것도 출력이 안됨

p_var3은 IN OUT, C를 입력했고 C그대로 출력후 프로시저 내부에서 B2로 변경되어 B2가 최종적으로 출력

'SQL' 카테고리의 다른 글

SQL Oracle DB XE 11g환경 구축  (1) 2022.12.14
SQL 서브쿼리 연습문제  (2) 2022.12.14
R-SQL(ORACLE) 연동 기초 문제  (0) 2022.12.14
R-SQL 연동(csv,DataFrame)  (0) 2022.12.14
SQL(Oracle)-R 연동 환경 구축  (0) 2022.12.14
profile

DataScience

@Ninestar

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!