>  기사  >  데이터 베이스  >  MySQL 저장 함수와 저장 프로시저의 차이점은 무엇입니까?

MySQL 저장 함수와 저장 프로시저의 차이점은 무엇입니까?

王林
王林앞으로
2023-05-26 14:28:263135검색

MySQL 저장 함수(사용자 정의 함수) 함수는 일반적으로 값을 계산하고 반환하는 데 사용되거나 자주 사용되는 계산을 함수로 작성할 수 있습니다.

저장 프로시저와 마찬가지로 저장 함수는 데이터베이스에 정의된 SQL 문 모음입니다.

저장 함수와 저장 프로시저의 차이점

1. 저장 함수에는 반환 값이 하나만 있고 저장 프로시저에는 반환 값이 여러 개 있거나 반환 값이 없을 수 있습니다.

2.저장 함수는 입력 매개변수만 가질 수 있으며 가져올 수 없습니다. 반면 저장 프로시저는 여러 개의 in, out 및 inout 매개변수를 가질 수 있습니다.

3. 저장 프로시저는 매우 복잡한 비즈니스 논리를 구현할 수 있지만, 함수에는 삽입, 업데이트, 삭제, 생성 등의 많은 제한 사항이 있으며 기타 문은 함수에서 사용할 수 없습니다.

4 .저장 함수는 쿼리 작업만 완료하고 입력 매개변수를 받아들이고 결과를 반환합니다. 이는 함수에 의해 구현된 함수가 상대적으로 타겟이 되었음을 의미합니다.

5. 저장 프로시저는 저장 함수를 호출할 수 있지만 함수는 저장 프로시저를 호출할 수 없습니다.

6. 저장 프로시저는 일반적으로 독립적인 부분(호출)으로 실행됩니다. 함수는 쿼리 문의 일부로 호출할 수 있습니다.

create function func_name ([param_name type[,...]])
returns type
[characteristic ...] 
begin
    routine_body
end;

매개변수 설명:
(1) func_name: 저장된 함수의 이름입니다.
(2)param_name 유형: 선택 사항, 저장 함수의 매개변수를 지정합니다. 유형 매개변수는 저장된 함수의 매개변수 유형을 지정하는 데 사용되며, 이는 MySQL 데이터베이스에서 지원되는 모든 유형일 수 있습니다.
(3) RETURNS 유형: 반환 값의 유형을 지정합니다.
(4) 특성: 선택 사항이며 저장 기능의 특성을 지정합니다.
(5) routine_body: SQL 코드 내용입니다.

rrreerrree

위 내용은 MySQL 저장 함수와 저장 프로시저의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제