我在SQL Server中有兩個SP。 SP1在具有不同參數的循環中重複調用SP2,並將SP2的輸出保存在臨時表中。在另一個SP中重複調用SP時,在SSRS中使用的被叫SP中的臨時表中導致重複的PK名稱問題
由SP1重複調用的SP2的某些臨時表具有「未命名」主鍵。
我知道臨時表上的已命名主鍵會導致問題,因爲即使臨時表本身被刪除,有時它們也不會被刪除。
在SP2中,如果它們存在,我將在最開始時檢查並刪除SP2中的任何臨時表。
這似乎是在SSMS內完全正常工作,但是當我在SSRS中使用SP1時,它幾次在PK名稱違規中引發SP2錯誤。
無法在對象#tempTable中插入重複鍵。
是否有解決此問題的方法?
如果要將重複值插入臨時表中,那麼爲什麼要將該列設置爲PK?看起來這裏的答案是在創建臨時表時避免這種指定,但如果您可以給出臨時表和循環代碼的結構示例,這將會很有幫助。 –