mysql function 만들기

MYSQL 함수를 만들어보자.

DELIMITER //
CREATE FUNCTION `함수명`(`변수명` 자료형) RETURNS 반환할 자료형 
DETERMINISTIC COMMENT '코멘트'
BEGIN
	DECLARE 변수명 자료형;
    
    SET 변수명 = 데이터;
    RETURN 변수명;
END//
DELIMITER;

 

NULL과 빈 문자열을 체크하는 함수!...

DELIMITER //
CREATE FUNCTION `IS_EMPTY`(`value` TEXT) RETURNS TINYINT(1)
DETERMINISTIC COMMENT '문자열이 비어 있는지 체크'
BEGIN
	DECLARE RESULT TINYINT(1);
	SELECT IF(value IS NULL OR TRIM(value) = '', TRUE, FALSE) INTO RESULT;
	RETURN RESULT;
END//
DELIMITER;

 

function 만들때 아래와 같은 오류가 발생한다면....

 

This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

 

아래에 명령어를 입력해주자

SET GLOBAL log_bin_trust_function_creators = 1;

'mysql' 카테고리의 다른 글

mysql 환경에서 시퀀스 사용하기  (0) 2024.08.17
쿼리문 실행 순서  (0) 2022.12.01

댓글