일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 인텔리제이
- 제네릭
- unboxing
- https://start.spring.io
- start.spring.io
- Java
- 스프링
- 박싱
- boxing
- wrapper
- 싱글톤
- 자동형변환
- 메소드
- maven
- bootstrap
- 언박싱
- suvlet
- 무한
- dependency
- 컬렉션
- Scanner
- 제너릭
- Short
- 루프
- 클래스
- Jenkins
- 콜렉션
- 빌드
- 내장객체
- 싱글턴
Archives
- Today
- Total
Developer Gonie
[6주차] 35. PL/SQL언어, 사용자 정의 프로시저(함수와 비슷하지만 반환값이 없음) 본문
K-DigitalTraining 강의/2. Oracle + PLSQL
[6주차] 35. PL/SQL언어, 사용자 정의 프로시저(함수와 비슷하지만 반환값이 없음)
이대곤 2022. 6. 17. 16:18프로시저란?
내부에서의 동작은 함수와 같지만 함수와 다르게 반환값이 없음. void procedure()와 같이 반환값이 없는 메소드와 같음.
반환값이 없기 때문에 select 에서 함수를 호출하듯이 특정 열의 값을 연산하여 대치해주는 것이 불가하다.
프로시저 동작 방식을 이해하기 위한 초간단 예시
* as 대신에 is 도 사용가능한데 별차이 없음
-- 특정 레코드를 update 하는 프로시저
create or replace procedure ptest(no number) -- 이름이 ptest인 프로시저
as -- 함수와 다르게 return, return 타입이 없음
begin
update members
set salary = salary*1.1
where id = no;
end;
/
-- 함수는 호출을 select 구문으로 했는데, 프로시저는 아래와 같이 호출함 2가지 방법
execute ptest(3)
exec ptest(3)
프로시저 예시
-- 특정 레코드를 delete 하는 프로시저
create or replace procedure ptest3(vno number)
as
begin
delete from customer where no = vno;
end;
/
-- 함수는 호출을 select 구문으로 했는데, 프로시저는 아래와 같이 호출함 2가지 방법
execute ptest3(3)
exec ptest3(3)
'K-DigitalTraining 강의 > 2. Oracle + PLSQL' 카테고리의 다른 글
[6주차] 37. PL/SQL언어, 예외처리 및 예외 강제로 발생시키기, 사용자 정의 예외 (0) | 2022.06.20 |
---|---|
[6주차] 36. PL/SQL언어, 한 줄 씩 가져와 모든 행의 레코드를 출력하는 방법(커서, 커서 + for~loop) (0) | 2022.06.20 |
[6주차] 34. PL/SQL언어, 재사용 가능한 이름있는 함수 작성방법 (0) | 2022.06.17 |
[6주차] 33. PL/SQL언어, 반복문의 종류(loop, for ~loop, while, 이중 반복문) (0) | 2022.06.17 |
[6주차] 32. PL/SQL언어, 변수의 타입을 간편하게 지정하는 방법, 1줄의 레코드를 한 번에 다 담을 수 있는 타입(%type, %rowtype) (0) | 2022.06.17 |
Comments