2009-07-24 8 views
-1

MYSQL에서 저장 프로 시저를 만들려고합니다. 아래 코드는 이고 구문 오류가 있습니다. 아무도 도와주세요. mysql에서 구문 오류가 발생했습니다.

CREATE PROCEDURE productpricing ( 
    OUT pl DECIMAL(8,2),  
    OUT ph DECIMAL(8,2),  
    OUT pa DECIMAL(8,2)  
) 

BEGIN 

    SELECT Min(prod_price) INTO pl  
    FROM products; 

    SELECT Max(prod_price) INTO ph 
    FROM products; 

    SELECT Avg(prod_price) INTO pa 
    FROM products; 

END; 

... 그리고 오류는 다음과 같습니다

당신은 당신의 SQL 구문에 오류가 있습니다; 라인에 가까운 '절차의 productpricing ( OUT PL DECIMAL (8,2), OUT 산도 DECIMAL (8,2), '를 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 설명서를 확인 한

답변

2

완료 할 수있는 절차를 정의하기 전에 클라이언트 (명령 행 또는 기타)에 의해 해석 될 수있는 MySQL의 구분을 변경해보십시오

이을 시도해보십시오.

DELIMITER // 
CREATE PROCEDURE productpricing ( 
    OUT pl DECIMAL(8,2),  
    OUT ph DECIMAL(8,2),  
    OUT pa DECIMAL(8,2)  
) 

BEGIN  
    SELECT Min(prod_price)  
    INTO pl  
    FROM products; 

    SELECT Max(prod_price)  
    INTO ph  
    FROM products; 

    SELECT Avg(prod_price)  
    INTO pa  
    FROM products;  
END// 

DELIMITER ; 
관련 문제