2011-04-21 9 views
0

저장 프로 시저에 오류가 있습니다. 나는 MySQL의 DB저장 프로 시저 오류

SET @counter = 1; 
SET @last = 0; 
UPDATE Customer SET ordre = (IF(@last = customer_id,@counter + 1,@counter = 1)), 
       @last = customer_id 

내 오류

스크립트 줄을 사용하십시오 3 SQL 구문에 오류가있다; 올바른 구문 당신은 UPDATE 문의 SET 절에서 변수를 설정할 수 없습니다 라인이

+0

은 '테이블'이라는 tablename입니까? – Nanne

+0

예, 죄송합니다. 내 게시물을 편집하십시오.) – Mercer

+0

사용중인 버전은 무엇입니까? – Gowri

답변

0

에서 ' CUSTOMER_ID에 의해 @last = CUSTOMER_ID ORDER' 근처를 사용하는 는 MySQL 서버에 버전에 해당하는 설명서를 확인. '@last = customer_id'는 오류를 발생시킵니다. 기준에서

-

UPDATE 구문 - '... SET col_name1 = expr1을 [col_name2 = expr2이 ...]

절 수정 열을 나타내는 설정 값들은해야 주어진.

+0

할 수 없습니다. 왜 내가 원하는거야? – Mercer

+0

이런 식으로 - 아니. 실제로 무엇을 할 것입니까? – Devart