Programming/Solution
[MySQL] function 생성: Sequel Pro
코딩슬라임
2020. 6. 27. 22:40
sequel pro를 사용해 MySQL을 쓸 때 사용자 지정 함수를 생성하는 방법은 다음과 같다.
DROP FUNCTION 'ufn_board_no'
delimiter ||
CREATE DEFINER=`test`@`%` FUNCTION `ufn_board_no`() RETURNS int(11)
BEGIN
DECLARE v_result INT(11);
SELECT MAX(a.no) + 1 INTO v_result
FROM table_sequense a
WHERE 1=1
AND a.name='board_no';
if v_result is null then
set v_result = 1;
end if;
INSERT INTO TABLE_SEQUENSE (`no`, `name`) VALUES (v_result, 'board_no');
RETURN (v_result);
END;
||
delimiter;
기존에 있는 함수의 syntax를 확인하면 다음과 같다.
CREATE DEFINER=`test`@`%` FUNCTION `ufn_board_no`() RETURNS int(11)
BEGIN
DECLARE v_result INT(11);
SELECT MAX(a.no) + 1 INTO v_result
FROM table_sequense a
WHERE 1=1
AND a.name='board_no';
if v_result is null then
set v_result = 1;
end if;
INSERT INTO TABLE_SEQUENSE (`no`, `name`) VALUES (v_result, 'board_no');
RETURN (v_result);
END;
새로 함수를 생성하려면 Query 탭에서 제일 위의 코드와 같이 다음 코드를 추가해주면 된다.
DROP FUNCTION 'ufn_board_no'
delimiter ||
||
delimiter;