從C#中的SQL Server 2K8我試圖做一個批量插入/更新記錄到父/子表進行優化。批量插入返回標識和對象引用/序列
的插入/更新會自動生成一個密鑰,我想經由輸出來提取等,然後重新分配回域模型。對於批量插入,我需要跟蹤哪個新生成的ID屬於批處理列表中的哪個域對象。
這個例子來接近我所需要的,但不知道是否有一種方法來沒有一個額外的列添加到表中(的SequenceNumber),並且仍然獲得相同的結果:http://illdata.com/blog/2010/01/13/sql-server-batch-inserts-of-parentchild-data-with-ibatis/
即。我們可以依賴從OUTPUT生成的插入的順序到臨時表中,還是傳遞一個在數據模型中設置的ref GUID並臨時傳遞給SQL,僅供參考?
既然你在SQL Server 2008中,你可以使用'合併... output'拿到生成的密鑰和臨時表使用的密鑰之間的映射。 http://stackoverflow.com/questions/5365629/using-merge-output-to-get-mapping-between-source-id-and-target-id –
完美,這正是我需要Mikael!如果你想要,你可以將其作爲回答發佈,以便我可以將其標記爲這樣。 – soundslike