전체 글 219

MySQL 프로시저 작성시 유의점

모든 DECLARE 를 무조건 위에 선언하고 모든 SET 을 아래에 선언한다. DECLARESETDECLARE (X)SET 이런식으로 중첩되면 오류가 난다. DECLAREDECLARE (O)SETSET 이렇게 하는 것이 정상이다. 별 것 아닌 것 처럼 보여도 이러한 기본적인 실수 때문에 많은 시간을 허비하여 야근모드에 돌입할 수도 있다. DELIMITER $$ USE `DB명`$$ DROP PROCEDURE IF EXISTS `프로시저명`$$ CREATE DEFINER=`DB명`@`%` PROCEDURE `프로시저명`(파라미터 변수들... , OUT 변수2 INT )BEGINDECLARE 변수 INT; (O) SET 변수2 = -1; DECLARE 변수 INT; (