programing

저장 프로시저, 기능 및 루틴의 차이점은 무엇입니까?

nicescript 2022. 10. 30. 16:05
반응형

저장 프로시저, 기능 및 루틴의 차이점은 무엇입니까?

MySQL 데이터베이스 컨텍스트에서 다음 세 가지 용어의 차이점은 무엇입니까?

  • 스토어드 프로시저
  • 저장 함수
  • 스토어드

이러한 날짜 날짜 시간 함수)와이 있습니다.WEEKDAY()etc됩니까?etc) etc) etc) etc) etc) etc) etc) etc) etc)

구글은 당신의 친구입니다."일치 루틴 기능 절차"의 첫 번째 일치는 다음과 같습니다.http://dev.mysql.com/doc/refman/5.0/en/stored-routines-syntax.html

요약:

저장된 루틴은 절차 또는 함수입니다.

프로시저는 CALL 문을 사용하여 호출되며 출력 변수를 사용하는 값만 반환할 수 있습니다.

함수는 다른 함수와 마찬가지로 스테이트먼트 내부에서 호출할 수 있으며 스칼라 값을 반환할 수 있습니다.

여기에서는, 기능과 순서의 차이를 정리했습니다.

  1. 함수는 항상 return 문을 사용하여 값을 반환합니다.PROCEDOR는 파라미터를 통해 하나 이상의 값을 반환하거나 전혀 반환하지 않을 수 있습니다.
  2. 함수는 일반적으로 비즈니스 로직을 실행하기 위해 절차를 사용하는 경우 계산에 사용됩니다.
  3. 함수는 1개의 값만 반환합니다.프로시저에서는 복수의 값(최대 1024)을 반환할 수).
  4. 스토어드 프로시저는 기본적으로 항상 정수 값 0을 반환합니다.함수 반환 유형은 스칼라 값, 테이블 값 또는 테이블 값일 수 있습니다.
  5. 저장 프로시저에는 미리 컴파일된 실행 계획이 있지만 함수는 그렇지 않습니다.
  6. 할 수 (예: SQL 문).SELECT func_name FROM DUAL아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아.
  7. 스토어드 프로시저를 사용하면 보안이 확보되어 네트워크트래픽이 감소합니다.또한 한번에 임의의 수의 어플리케이션에서 스토어드 프로시저를 호출할 수 있습니다.
  8. 함수는 SQL 쿼리에서 사용할 수 있지만 프로시저는 SQL 쿼리에서 사용할 수 없습니다.그 때문에, 기능과 순서의 큰 차이가 발생합니다.

MySQL 함수와 mysql 프로시저의 차이점

MYSQL 함수

값을 반환해야 합니다. IN,OUT ★★★★★★★★★★★★★★★★★」INOUT기능에서 사용할 수 없습니다.문에서 할 수 .SQL을 사용합니다.함수는 하나의 값을 반환합니다.

MYSQL 순서

Return Values는 필수는 아니지만 OUT 파라미터를 사용하여 반환 절차를 수행할 수 있습니다.를 사용할 수 있습니다.IN|OUT|INOUT파라미터를 지정합니다.SQL 문에서 프로시저를 호출할 수 없습니다. 프로시저는 를 사용하여 여러 값을 반환합니다.OUT또는INOUT파라미터를 지정합니다.

절차와 기능

1.  PROCEDURES may or may not return a value but FUNCTION must return a value
2.  PROCEDURES can have input/output parameter but FUNCTION only has input parameter.
3.  We can call FUNCTION from PROCEDURES but cannot call PROCEDURES from a function. 
4.  We cannot use PROCEDURES in SQL statement like SELECT, INSERT, UPDATE, DELETE, MERGE etc. but we can use them with FUNCTION.
5.  We can use try-catch exception handling in PROCEDURES but we cannot do that in FUNCTION. 
6.  We can use transaction in PROCEDURES but it is not possible in FUNCTION.

함수는 값을 반환해야 하지만 저장 프로시저에서는 값을 반환할 수 있습니다(프로시저는 0 또는 n 값을 반환할 수 있습니다).함수에는 입력 파라미터만 지정할 수 있는 반면 절차에는 입력/출력 파라미터를 지정할 수 있습니다.Procedure에서 함수를 호출할 수 있는 반면, Procedures는 Function에서 호출할 수 없습니다.

언급URL : https://stackoverflow.com/questions/2680745/whats-the-differences-between-stored-procedures-functions-and-routines

반응형