2011-12-15 9 views
0

私はまだ問題を示していることを作ることができる最も簡単なSQLまで、この問題を蒸留しようとしました。私はVisual Studioデータベースプロジェクトでsprocを持っていますが、これはVisual Studioで警告をスローしていますが、SQL Serverでは完全に有効なSQLです。警告を消しておきたい。誰でも警告を修正するためにSQLを書き直す方法を知っていますか?(SQL Serverで動作します)Visual Studioが警告例外XMLとPROCをストアド

CREATE PROCEDURE SampleSproc 
    @ResourcesXML xml   
AS 
BEGIN 
    SELECT S.PlanID FROM 
    (SELECT foo.x.value('@PlanID','int') AS PlanID 
    FROM @ResourcesXML.nodes('A') AS foo(x)) AS S  
END 

警告は次のとおりです。

SQL04151: Procedure: [dbo].[SampleSproc] contains an unresolved reference to an object. 
Either the object does not exist or the reference is ambiguous because it could refer to any of the following objects: 
[@ResourcesXML].[x]::[value] or [foo].[x].[value] 

それはfoo.x.value一部不満です。 x.valueを実行するだけで、同じ警告がスローされます。 VSが曖昧ではないと思うようにVSを「トリックする」ために何ができるか分かりません。

答えて

0

ジェームズは、リンクされたバグレポート上の問題を回避するには、少し陳腐ですが、それは作業を行います。

WITH CTE_Result AS 
(
    SELECT foo.x.value('@PlanID','int') AS PlanID 
    FROM @ResourcesXML.nodes('A') AS foo(x) 
) 
SELECT PlanID FROM CTE_Result 
を:ここで私はそれを変更し、警告が去って行ったものです
関連する問題