2013-04-24 2 views
0

어떻게이 매개 변수로이 프로 시저를 호출 할 수 있습니까?mysql에서 이벤트로 매개 변수로 프로 시저 호출하기

SET @newday = current_date() + INTERVAL 6 DAY; 
CALL add_day('20','@newday') 

구문 오류가있어서 찾을 수 없기 때문에 저장할 수 없습니다!

+0

나는 그저 일부 구문 오류를주지 않을 것이라고 확신한다 ... – str

+0

그밖에 ??? 나도 알아,하지만 내가 뭘 하려는지 이해할 수있어. – MoonFox

+0

구문 오류가 있으면 질문에 추가하십시오. – str

답변

-1

내가 한 것과 따르십시오.

기능 내가 만든 :

create function add_day(days int, date_from datetime) 
returns datetime 
return date_add(date_from, interval days day); 

전화는 내가 만든 :

SET @newday1 = current_date() + INTERVAL 6 DAY; 
select add_day('20',@newday1); 

위의 스크립트를 실행할 때 오류가 발생하는 경우, 오류가 함수 내에서 할 수있다. 당신이 우리에게 proc이 아닌 함수라고 말했기 때문에 함수를 호출하는 방식을 바꿉니다.

+0

그래, 난 함수가 ..하지만 다시 구문 오류를 준다 – MoonFox

+0

내가 전에 해냈어 .. 내게 날짜를 준다 ** 2013-04-30 ** – MoonFox

+0

SET @var_name = '값'이 맞다 . 사용할 필요 없음 = = –

0

당신은 그것이 기능이라고 말했습니다. 함수 인 경우 CALL 대신 SELECT을 사용해야합니다.

프로 시저 인 경우 올바르게 호출하고 있습니다. 이 경우 오류는 호출이 아닌 프로 시저 본문에 있습니다.

+0

절차가 잘 작동합니다. 나는 여러 번 시험한다. – MoonFox

+0

전화하는 방식에 구문 오류가 없습니다. 아마, 그것은 특정 입력 값에 오류를줍니다 ... –

관련 문제