3
A
回答
4
您需要某種方式來識別行的排序來確定。類似於「創建日期」或IDENTITY列。
2
你不能。一個表由一組無序的行*組成。例如,如果您需要了解某行插入時的情況,則需要將該信息添加到表定義中(通過添加一個新列)並適當填充。
*即使面對聚集索引,總是更健康將表視爲無序的一組行。聚集索引是有用的,但它不能保證任何特定的物理順序(正如馬丁評論這個答案)
+0
單頁內的行不一定按聚簇索引排序,行偏移列表是但偏移本身可能無序。即如果一個完整的頁面有鍵值爲'1,2,3,5,6'的行,然後刪除'1'並且插入了'4',那麼它將不會重新組織整個頁面,它將僅僅粘貼'4',其中` 1`並更新行偏移列表。 – 2011-01-11 13:19:01
0
不要相信你可以。你需要一些標識符來提取數據。 ID,DateTime ..任何將永遠不同於其他人的東西。
2
如果你想從沒有uniqueIdentifier或identity的表中得到最後一行,那麼你可以使用插入觸發器。
-1
DECLARE @IDs TABLE(id int)
insert into TableName(TableID, TableRowValue)
output inserted.TableID into @IDs
values(857, 'Test');
- 插入的身份將是@IDs
表變量
0
如果插入的存儲過程,你應該使用SELECT SCOPE_IDENTITY()將返回在當前會話中創建的最後一個標識值
,但它也會將其限制到您當前的範圍。 通過這種用法,您不會得到可能由觸發器引起的上次插入的身份。
請記住,如果您將結果用於插入操作在相同或被調用的過程中。
相關問題
- 1. 如何獲取Web服務中最後插入的記錄ID
- 2. 如何在插入記錄後從SQL服務器獲取標識值
- 3. SQL服務器:在插入
- 4. 獲取最後插入的行的ID
- 5. 如何在mysql中獲取最後插入的2行perticular id?
- 6. 如何獲取最後插入的行在cakephp
- 7. 如何在SQLite中獲取最後插入的行guid?
- 8. SQL服務器:如何插入「文字
- 9. sql server:我如何獲取插入的最後一條記錄?
- 10. 在鏈接服務器中獲取插入行的身份的最佳方法?
- 11. MSSQL服務器僅插入最後一行的存儲過程
- 12. 值插入SQL服務器
- 13. 插入雙Sql服務器
- 14. SQL服務器插入慢
- 15. 如何從SQL Server中通過QSqlQuery.lastInsertId()獲取最後插入的行的ID?
- 16. 如何獲取不同的行最後插入到數據庫?
- 17. 如何從wordpress數據庫獲取最後插入的行ID?
- 18. 插入後獲取ID在SQL Server中
- 19. 如何加速多行插入到SQL服務器?
- 20. 插入sql_variant列在sql服務器
- 21. SQL服務器:插入一行觸發插入
- 22. 如何在Gupta SQL Base中獲取最後插入的記錄ID
- 23. 如何使用OpenERP在Postgresql中獲取最後插入的ID
- 24. 如何在LINQ中獲取最後一個插入的ID EF
- 25. SQL顯示最後插入的行
- 26. 獲取最後插入的ID
- 27. 獲取最後一個插入的ID
- 28. alembic並獲取最後插入的值
- 29. Node + Mongoose:獲取最後插入的ID?
- 30. Sql服務器 - 如何獲取最後一次服務器重啓(DMV重置日期/時間)
雖然這只是我的看法,但我相信每個表都應該有一個唯一的ID,即使它沒有被應用程序本身使用。這樣做會解決你的問題 – saret 2011-01-11 12:38:10
除非表中沒有索引,否則你不能。我可以問爲什麼你想要最後的記錄? – 2011-01-11 12:39:08
@saret在使用Uniqueidentifier時仍不可能獲取最後一條記錄 – 2011-01-11 12:40:21