我聽說你不能先插入一行,並立即在SQL Server的同一個事務的下一條語句中更新它?但我一直這樣做(SQL Server 2005),我的結果顯示它已完成。我在這裏錯過了什麼或做了些什麼愚蠢的事情?請指教。謝謝。在同一個事務中插入和更新
回答
根據我的經驗,如果插入的數量相對較高,則在相同查詢中插入和更新可能會導致鎖定查詢。我會考慮創建觸發器插入和修改值插入之前。不知道這種方法對你的情況有多相關。但話雖如此,在相同的查詢中插入和更新是絕對有可能的。
是的,你可能是對的!此外,我可以使用Output子句來避免觸發器。但我只是想確定這是否可能(在同一交易中插入和更新)。另外,如果我需要新插入行的身份值進行進一步處理,我可以更好地使用 - SCOPE_IDENTITY()而不是採用MAX(id)...我希望這也是一個正確的方法。謝謝你們回覆。我還沒有結束這個問題,因爲我可能會得到一些有趣的評論/評論。 – Tintin 2011-03-08 22:31:32
DECLARE @LastRecordID int 執行插入 SET @LastRecordID = @@ IDENTITY UPDATE表SET列=值WHERE ID = @ LastRecordID – Dimitri 2011-03-08 22:36:03
- 1. C#/ SQL:在一個事務中執行多個插入/更新
- 2. 插入和更新同一個TRANSACTION中的同一行? (MySQL)
- 3. Sqlite事務,語法錯誤。在同一個事務中插入和刪除
- 4. 在一個表格中插入和更新不同的表格
- 5. 插入和更新同時
- 6. 同時插入和更新
- 7. 在同一個事務中同時執行刪除和插入記錄操作?
- 8. 在同一事務中插入和刪除?
- 9. MySQL觸發事務插入或更新
- 10. NHibernate事務失敗,並在Oracle上插入和更新
- 11. 在同一個MySQL事務中更新相關表的方法?
- 12. 更新和插入一個查詢
- 13. 在一個過程中在不同表格中插入和更新
- 14. SQL Server的 - ALTER TABLE和插入在同一事務
- 15. 在同一個表中更新/插入觸發器
- 16. 插入多個數據庫在同一事務
- 17. 使用交易插入和更新同一個表
- 18. mysql列插入和不同的一個更新
- 19. 批量插入在SQL服務器同時更新多個表
- 20. SQL Server - 在同一事務中選擇表中插入的行
- 21. 在MySql表中同時插入/更新?
- 22. Asp.Net動態數據在單個事務中更新/插入2個表
- 23. ContentProvider bulkInsert嵌套事務,插入和更新需要
- 24. 插入和更新在單個語句
- 25. 與codeigniter同時插入和更新
- 26. mysql:在一個查詢中選擇,插入,刪除和更新
- 27. 在一個查詢中插入和更新MYSQL
- 28. 在一個查詢API和PHP中插入或更新
- 29. 如何在一個查詢中插入和更新
- 30. 在一個查詢中批量插入和更新sqlite
你能提供你使用的代碼嗎? – Ramy 2011-03-08 22:13:59
你也有一個信息來源,這是不能做到的嗎? - 可能只是一個誤解。這當然不是我遇到過的問題。 – 2011-03-08 22:18:16
在SQL Server 2008引入[MERGE]之前,您可能會考慮[有關upserts的問題](http://samsaffron.com/blog/archive/2007/04/04/14.aspx)(http:// technet.microsoft.com/en-us/library/bb510625.aspx)聲明。 – 2011-03-08 22:22:31