2017-10-02 7 views
1

SELECTクエリの結果に応じて、IDの配列を返すストアドプロシージャがあります。どのようにSQL Serverでこれを行うことができますか?ここでは、出力パラメータのストアドプロシージャからIDの配列を返す方法は?

ALTER PROCEDURE [dbo].[PS_testGar] 
    @CODE_B, 
    @ids OUTPUT 
AS 
BEGIN 
    SELECT @ids = code_gar 
    FROM [dbo].[GARANTIE] 
    WHERE CODE_B= @CODE_B 
END 
+0

"@ids ="を削除してください。 SQL ServerはネイティブでIDのリストを返します。あなたはこれをどの言語から呼びますか? – Jeremy

+0

本当に出力パラメータが必要ですか?その場合は、ユーザー定義の表タイプが必要です。より簡単な方法は、プロシージャ内にselect文を置いて、それを結果セットにすることです。 –

+0

@Jeremy私はWCFサービスから呼び出します。 "@ids ="を削除しました。出力パラメータをどのように宣言しますか? – KhadBr

答えて

2

必要がありません:

は、ここに私のストアドプロシージャです。これはあなたの手順がどのように見えるかです。

ALTER PROCEDURE [dbo].[PS_testGar] 
(
    @CODE_B int --or whatever your datatype is 
) AS 
BEGIN 
    SET NOCOUNT ON; 

    SELECT code_gar 
    FROM [dbo].[GARANTIE] 
    WHERE CODE_B = @CODE_B 
END 
+0

このSPを呼び出すwcfサービスからその結果セットを処理する方法は? – KhadBr

+0

ExecuteReaderを使用します。 Jeremyが上記のコメントに投稿したリンクを見てください。いくつかの例があります。 –

+0

ありがとう、これは助けた。 – KhadBr

関連する問題