2017-07-10 28 views
1

私はXMLファイルを介してテーブルを更新していますが、私はSQLコードを実行するとき、それはこのエラーを投げる: -マルチパート識別子をバインドできませんでした。[4104]

enter image description here

そして、ここに私のコードは正しい構文ではない厥

IF(@PreppedUpdateModelXml is NULL OR @PreppedUpdateModelXml.exist('*') = 0) 
      BEGIN 
       --Create an internal representation of the XML document. 
       EXEC sp_xml_preparedocument @PID OUTPUT,@PreppedUpdateModelXml 

       UPDATE EquipmentModel 
       SET [Category] = em.[Category] 
       SELECT * FROM OPENXML (@PID, '/Root/NewDataSet',2) 
       WITH ([Category] VARCHAR(50), [ModelID] INT) AS em 
       WHERE EquipmentModel.ModelID = em.ModelID 
      END 

答えて

1

ですOpenxml結果の表を更新するには、この方法を試してください。

UPDATE e 
SET [Category] = em.[Category] 
FROM EquipmentModel e 
     JOIN OPENXML (@PID, '/Root/NewDataSet', 2) 
       WITH ([Category] VARCHAR(50), 
        [ModelID] INT) em 
     ON e.ModelID = em.ModelID 
関連する問題