하나 개 이상의 출력 매개 변수와 함께 작동하는 방법 : ALTER PROCEDURE [dbo].[SP_Name] @VarName decimal(18,2) OUTPUT as
...내가처럼 보이는 출력 매개 변수가있는 SP가 하나의 저장 프로 시저
내가 값을 얻을 vb.net에서 해당 프로 시저를 호출을 계산. 내 문제는 : 나는 다음과 같은 구조로 8 SP가 있습니다 :
CREATE PROCEDURE [dbo].[SP_Name] @VarName decimal(18,2) OUTPUT as ...
CREATE TABLE @TempTable
Begin
Select ...
End
SET @VarName = Result
그러나 TempTable은 항상 같습니다. 아니요 하나의 저장 프로 시저 만 사용하여 8 개의 값을 모두 얻는 방법을 찾고 있습니다. 내 생각 :
CREATE PROCEDURE [dbo].[SP_Name] @VarName decimal(18,2) OUTPUT as ...
CREATE TABLE @TempTable
---Get first value
Begin
Select ...
End
SET @VarName1 = Result
---Get second value
Begin
Select ...
End
SET @VarName2 = Result
...
어떻게 내가 라인을 다시 작성해야합니까 : ALTER PROCEDURE [dbo].[SP_Name] @VarName decimal(18,2) OUTPUT
는 IR 나는 심지어 배열로 작업 할 수 있습니다?
안녕하세요! 귀하의 답변에 감사드립니다. 따라서 데이터 집합 솔루션을 사용하겠습니다. 나는 어쩌면 내가 8 개의 값을 모두 outputparameter (배열)에 넣고 cmd.Parameters.Add ("@ Varname [1]", SqlDbType.Int)와 같은 식으로 호출 할 수있는 솔루션이라고 생각했습니다. Direction = ParameterDirection .산출; – ruedi
글쎄, 하나 또는 여러 개의 [출력 매개 변수] (http://technet.microsoft.com/en-us/library/ms187004 (v = sql.105) .aspx)를 단일 저장 프로 시저에 사용하여 액세스 할 수 있습니다 그러나 제 생각에는 단일 쿼리를 반환하고 8 개의 출력 매개 변수를 선언하지 않고 가져 오는 것은 쉽습니다. – Kaf