[英]Pass XML variable from a stored proc to another stored proc in SQL server
我有 2 個存儲過程。
第一個接收一些變量作為輸入參數,其中一個是 XML。
在這個過程中,我調用另一個過程,但動態地像那樣。 此過程處理 XML 以將其插入數據庫。
SET @SQL = 'EXEC [' + @ServerIp + '].[List_' + CAST(@AccountId AS VARCHAR) + '].[dbo].[psu_proc_name] @ParameterId = ' + CAST(@ParameterId AS VARCHAR) + ',@MappingFields = ' + @MappingFields
@MappingFields 是第一個過程和第二個過程中的 XML 變量的名稱(動態調用)
我在第二個過程(動態)中管理 XML 的處理,但我不知道如何將參數作為 XML 傳遞給第二個過程。
謝謝
最好的方法是使用sp_executesql存儲過程,而不是使用 simle exec
命令。 請參閱EXEC sp_executesql with multiple parameters問題中的不重復但非常清晰的示例,以便於理解細節。
我試過這樣的事情:
SET @SQL = N'EXEC [' + @ServerIp + '].[List_' + CAST(@AccountId AS VARCHAR) + '].[dbo].[psu_opensystem_field_mapping_add]'
EXEC sp_executeSQL @SQL, N'@ParameterId INT, @MappingFields XML' , @ParameterId, @MappingFields
但它說
Procedure or function 'psu_opensystem_field_mapping_add' expects parameter '@ParameterId', which was not supplied
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.