'mysql 함수'에 해당되는 글 1건

  1. 2016.05.17 [Mysql] 스토어드 함수
MySQL2016.05.17 17:16

 

[함수 생성 및 삭제]

   

DELIMITER ;;
CREATE FUNCTION sf_sum(param1 INTEGER, param2 INTEGER)
RETURNS INTEGER
BEGIN
DECLARE param3 INTEGER DEFAULT 0;
SET param3 = param1 + param2;
RETURN param3;
END;;
DELIMITER ;

※ 프로시저와는 다르게 IN이나 OUT, INOUT 형식 지정을 할 수 없다. RETURNS 키워드를 이용해 반환 되는 값의 타입 명시 해야 함. 또한 함수 본문 마지막에 정의부에 지정된 타입과 동일한 타입의 값을 RETURN 명령으로 반환해야 한다.

   

※프로시저와 다른 점

1. PREPARE와 EXECUTE 명령을 이용한 프리페어 스테이트먼트를 사용할 수 없다.

2. 명시적 또는 묵시적인 ROLLBACK/COMMIT을 유발하는 SQL 문장을 사용할 수 없다.

3. 재귀 호출을 사용할 수 없다.

4. 스토어드 함수 내에서 프로시저를 호출할 수 없다.

5. 결과 셋을 반환하는 SQL 문장을 사용할 수 없다.

   

[함수 실행]

   

SELECT sf_sum(1,2) as sum;
 

  

 

신고

'MySQL' 카테고리의 다른 글

[Mysql] 변수  (0) 2016.05.19
[Mysql] 제어문  (0) 2016.05.19
[Mysql] 스토어드 함수  (0) 2016.05.17
[Mysql] 스토어드 프로시저  (0) 2016.05.17
[Mysql] 실행계획2  (1) 2015.05.15
[Mysql] 실행계획  (0) 2015.05.11
Posted by TM ~ing