"저장 프로시저"의 두 판 사이의 차이

436 바이트 추가됨 ,  6년 전
잔글
# 비즈니스 로직의 일부로 사용하는 경우 업무의 사양 변경 시 외부 응용프로그램과 함께 저장프로시저의 정의를 변경할 필요가 있다. 이때 불필요한 수고와 변경 실수에 의한 장애를 발생시킬 가능성이 있다.
 
== DBMS별 예제 ==
== MySQL 저장프로시저==
=== 개요오라클 ===
{{분할 필요 문단}}
다음은 PL/SQL로 구현한 오라클 [[저장 프로시저]]의 예이다.
=== 개요 ===
 
<source lang="plsql">
CREATE OR REPLACE PROCEDURE helloworld (str IN VARCHAR2)
AS
hw VARCHAR2 (100) : = 'Hello World!';
BEGIN
DBMS_OUTPUT. PUT_LINE ( 'Hello World!');
DBMS_OUTPUT. PUT_LINE ( 'VARIABLE hw ='| | hw);
DBMS_OUTPUT. PUT_LINE ( 'Parameter str ='| | str);
END;
/
</source>
=== MySQL ===
{{분할 필요 문단|MySQL 저장 프로시저}}
MySQL은 버전 5.0 이후 표준 SQL 규격 저장프로시저를 ​​지원하고 있다. 다음은 함수와 프로시저에서 동등한 처리를 하는 예를 보여준다.
 
==== 함수 예1 (DB 개입 없음) ====
(1) 정의
<source lang="mysql">
</source>
 
==== 프로시저의 예1 (DB 개입 없음) ====
(1) 정의
<source lang="mysql">
</source>
 
====함수 예제2 (DB 작업 있음)====
(1) 테이블 정의 및 데이터
<source lang="mysql">
</source>
 
====프로시저 예제2 (DB 작업 있음, 비커서 작업)====
(1) 테이블 정의 및 데이터
:"함수 예제2 (DB 작업 있습니다)"와 같다.
(2) 정의
<source lang="mysql">
</source>
 
====프로시저 예제3 (DB 작업 있음, 커서 작업)====
(1) 테이블 정의 및 데이터
:"함수 예제2 (DB작업 있습니다)"와 같다.
 
(2) 정의