2012-05-04 5 views
-1

일반적으로 저장 프로 시저에서는 오류없이 성공 실행시 0을 반환하고 저장 프로 시저에 오류가 발생하면 -1 등을 반환합니다.
어쨌든 저장 프로 시저에서 int 반환 값을 덮어 쓸 수 있습니까?저장 프로 시저의 반환 값 덮어 쓰기

+0

사용 기능. –

+0

절차에서 int를 [RETURN] (http://msdn.microsoft.com/en-us/library/ms174998%28v=sql.90%29.aspx) 할 수 있습니다. –

답변

1

여기는 function description으로 원하는 것을 돌려 줄 수 있습니다. 당신이 쓰기 액세스를 필요로하는 경우

또는, 당신은 당신이 선택 문을 사용하여 반환 할 무엇도 반환 할 수 있습니다이

CREATE PROCEDURE dbo.MyStoredProcedure (
    @myInput NVARCHAR(50), 
    @myOutput INT OUTPUT) 
AS 
SELECT @myOutput = COUNT(*) 
FROM MyTable 
WHERE MyColumn = @myInput 
+0

이것은 저장 프로 시저가 아닌 함수입니다. – Guffa

+0

심지어 여러 값을 반환 :) 좋은 ... 같은 게시 할 수 있습니다. – Milee

0

SP 같은 뭔가의 StoredProcedure에서 당신은 출력 매개 변수를 추가 할 수 있지만, 이상적으로는 기능 때를 사용해야합니다 단일 값을 리턴해야합니다.

문제는 yes입니다.

+0

'select' 문은 반환 값을 변경하지 않습니다. "예"는 질문에 대한 정답이지만 유용하지는 않습니다. 당연히 질문은 "그렇다면 어떻게?"도 의미합니다. – Guffa

+0

@Guffa 내가 선택한 것은 1을 선택하고 'a'를 선택했습니다. – Deepesh

+0

무엇을 선택하든 반환 값은 변경되지 않습니다. 이는 프로 시저에서 리턴 된 결과/결과와 별개입니다. 프로시 저는 0 개 이상의 결과를 반환 할 수 있지만 항상 하나의 정수 값을 반환합니다. – Guffa

관련 문제