2013-08-06 4 views
4

에 저장 프로 시저의 결과를 삽입하는 방법 :MySQL의 :이 같은 임시 테이블에 저장 프로 시저의 결과를 삽입 할 임시 테이블

CREATE temporary TABLE NEWBalance (VendorAmount NUMERIC(15,2), 
            UserBalanceAmount NUMERIC(15,2)); 

INSERT NEWBalance call SP VenAccNo,PeopleId; 

을하지만 그 오류 발생 :

Error Code: 1064. You have an error in your SQL syntax; check 
the manual that corresponds to your MySQL server version for 
the right syntax to use near 'call SP VenAccNo,PeopleId' at line 1 

이 방법이 있습니까?

답변

6

불행히도 MySql에서 여전히 그렇게 할 수 없습니다.

가능한 해결책은 SP를 수정하여 임시 테이블에 삽입하는 것입니다.

CREATE PROCEDURE your_sp(...) 
BEGIN 
    -- do your processing 
    ... 
    -- insert results into a temporary table 
    INSERT INTO NEWBalance ... 
    SELECT ...; 
END 

는 그런 다음 흐름이

CREATE temporary TABLE NEWBalance 
(
VendorAmount NUMERIC(15,2), 
UserBalanceAmount NUMERIC(15,2) 
); 

CALL your_sp (...); 

-- do your processing on data in a temporary table 
... 

DROP TEMPORARY TABLE NEWBalance; 
같다
관련 문제