2012-01-25 8 views
2

私のようなので、参加して、ストアドプロシージャを持っている:ストアドプロシージャは、行を返さない - いくつかのデバッグのヒントに必要

FROM Salesforce_Pervasive.dbo.Account a 
INNER JOIN Salesforce_Pervasive.dbo.Contact c 
    ON a.Id = c.AccountId 
INNER JOIN Online_Security.dbo.Main_Security_table m 
    ON c.Id = m.Salesforce_Contact_ID 
LEFT OUTER JOIN Website_Interactive.dbo.Extended_User_Object euo 
    ON m.Web_ID = euo.Web_ID  
WHERE c.Id = @salesforce_id 

私は任意の行は、特定のユーザーに対して返さ得ることはありません(私はIDを提供しています) 。なぜこのようなことがあるのか​​を調査するための "リード"は何でしょうか?

ありがとう

+0

これをストアドプロシージャで実行せずにidを入力するとどうなりますか?レコードを取得しますか? – Taryn

+0

私はあなたがDBを見て、そのユーザーのデータがあると仮定しますか? 2番目の内部結合を削除してもう一度試してください。 – Ray

+0

ストアプロシージャは複数の結果セットを返します。あなたの前に選択が行われていないかどうかを調べてください。 – heximal

答えて

5

「実際の実行計画」をオンにしてSSMSでストアドプロシージャを実行します。

実際の行数を示す矢印の上にマウスを置きます。それらがゼロになるところを見てください。

+0

ありがとう、私はそれを試みます。 – dotnetdev

関連する問題