출력 매개 변수를 사용하여 Exec 결과를 SQL 변수에 할당
SQL에서 exec 명령은 일반적으로 저장 프로시저와 함수를 실행하는 데 사용됩니다. 제안한 것과 같은 표현식("exec @PreviousBusinessDay = dbo.up_GetBusinessDay @Date, -1")을 사용하여 exec 호출 결과를 변수에 직접 할당할 수는 없지만 이 기능을 달성하기 위한 대체 방법이 있습니다.
선호되는 접근 방식 중 하나는 출력 매개변수를 사용하는 것입니다. 출력 매개변수를 사용하면 변수를 입력으로 전달할 수 있을 뿐만 아니라 저장 프로시저나 함수에서 반환된 값으로 업데이트할 수도 있습니다. 수행 방법은 다음과 같습니다.
출력 매개 변수가 있는 저장 프로시저 만들기:
CREATE PROCEDURE YourStoredProcedure( @Param1 int, @Param2 varchar(5), @Param3 datetime OUTPUT ) AS IF ISNULL(@Param1, 0) > 5 BEGIN SET @Param3 = GETDATE() END ELSE BEGIN SET @Param3 = '1/1/2010' END RETURN 0 GO
이 예에서는 @Param3 매개 변수가 출력으로 선언됩니다. 매개변수. 이는 저장 프로시저에서 반환된 값으로 업데이트됩니다.
출력 매개변수를 사용하여 저장 프로시저 호출:
DECLARE @OutputParameter datetime ,@ReturnValue int EXEC @ReturnValue = YourStoredProcedure 1, NULL, @OutputParameter OUTPUT PRINT @ReturnValue PRINT CONVERT(char(23), @OutputParameter, 121)
이 예에서 @OutputParameter 변수가 선언되어 저장 프로시저에 출력 매개변수로 전달됩니다. exec 호출 후 @OutputParameter 변수에는 저장 프로시저에서 반환된 결과가 포함되어 콘솔에 인쇄됩니다.
출력:
0 2010-01-01 00:00:00.000
출력 매개변수를 사용하면 SQL에서 저장 프로시저와 클라이언트 애플리케이션 간에 값을 전달하는 강력하고 효율적인 방법이 제공됩니다.
위 내용은 SQL `exec` 명령의 결과를 변수에 할당하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!