집 >데이터 베이스 >MySQL 튜토리얼 >내 저장 프로시저에 '인수가 너무 많습니다' 오류가 발생하는 이유는 무엇입니까?
프로시저 또는 함수에 인수가 너무 많이 지정되었습니다.
이 오류 메시지가 표시되면 프로시저 또는 함수에 너무 많은 인수가 지정되었음을 나타냅니다. 저장 프로시저나 함수의 호출. 오류의 원인을 식별하는 것은 문제 해결에 매우 중요할 수 있습니다.
오류의 원인 식별
주어진 시나리오에서 저장된 오류를 호출하는 동안 오류가 발생합니다. 프로시저 [dbo].[M_UPDATES]는 다른 저장 프로시저인 [etl_M_Update_Promo]를 호출합니다. 조사해 보면 [dbo].[M_UPDATES]는 두 개의 매개변수를 사용하여 [etl_M_Update_Promo]를 호출하려고 시도하는 반면, [etl_M_Update_Promo] 선언은 하나의 매개변수만 지정하는 것으로 나타났습니다.
에 대한 코드 [dbo].[M_UPDATES]
EXEC etl.etl_M_Update_Promo @GenID, @Description
[etl_M_Update_Promo]에 대한 코드
ALTER PROCEDURE [etl].[etl_M_Update_Promo] @GenId bigint = 0 as
보시다시피 [etl_M_Update_Promo]는 다음으로 선언됩니다. @GenId 매개변수만 사용하면 오류가 발생합니다. message.
해결 방법
이 문제를 해결하려면 추가 매개변수 @Description을 포함하도록 [etl_M_Update_Promo] 선언을 수정해야 합니다. 이렇게 하면 함수는 [dbo].[M_UPDATES].
[etl_M_Update_Promo]에 대한 업데이트된 코드
ALTER PROCEDURE [etl].[etl_M_Update_Promo] @GenId bigint = 0, @Description NVARCHAR(50) AS선언을 업데이트한 후에는 오류가 해결되어 프로시저가 의도한 대로 작동할 수 있습니다.
위 내용은 내 저장 프로시저에 '인수가 너무 많습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!