我運行了一個刪除腳本來刪除id大於0的所有行以清除表,現在當我嘗試向表中添加行時,id開始離開之前的地方。我怎樣才能刪除表中的信息,以便ID再次從1開始?sql表中的標識id列不是從1開始
0
A
回答
3
刪除語句不會重置標識值。如果您希望標識值被重置,請使用截斷表命令。像這樣的東西..
TRUNCATE TABLE Table_Name
這將清空表並重置標識值。
只有在想要刪除所有行時才使用TRUNCATE。因爲它不允許你使用WHERE子句。
0
我不認爲這是可能的在同一張表。你正在使用哪個數據庫?在之前版本的MS Access中,壓縮數據庫用於工作,但不再是這樣。我不認爲SQL Server也支持這一點。唯一的方法是將該表中的記錄複製到新表中,刪除舊錶並將新表重命名爲舊錶名。
0
在MS-SQL,你可以有DBCC CHECKIDENT (yourtable, reseed, 0)
相關問題
- 1. 標識值不會重新開始從1在SQL Server
- 2. 如何讓Sql Server CE從1開始標識?
- 3. SQL Server中的自動增量列並不總是從1開始?
- 4. For循環從0001開始而不是從1開始
- 5. 爲什麼應該從0開始而不是從1開始?
- 6. C#列表開始值1
- 7. 鼠標點擊座標索引從0開始還是從1開始?
- 8. 爲什麼它會從列表[-1]而不是列表[0]開始計算列表中的元素? (Python 3中)
- 9. 酒吧從1開始而不是0
- 10. 從1開始代碼而不是0?
- 11. 從位置1開始NSArray不是0
- 12. 我想ID從0開始,而是從1
- 13. 更新mysql,新數據從唯一標識開始1
- 14. 如何可以從1開始的陣列不是0
- 15. 獲取(超)簡單的jQuery陣列從1開始,不是0
- 16. 批量插入到SQL表中,並使用唯一標識列不是標識
- 17. 從列表中選擇列1中的所有行,列1和列2是標識
- 18. 從1開始
- 19. 爲什麼從std :: placeholders :: _ 1開始而不是_0開始?
- 20. SQL Server 2008 - 標識列跳過行ID
- 21. 在sql中設置auto_increment的用法(好處)不是從1開始的?
- 22. 從表1中的SQL Server選擇ID其中,表2中的比賽標準
- 23. 爲什麼postgres tx id不是從1開始的新創建的數據庫?
- 24. 從範圍開始的Excel VBA數組從-1開始而不是0
- 25. Android SQLite數據庫刪除表後,ID將從1開始?
- 26. 從表中的列中移除標識
- 27. Highstock Navigator始終從1970-1-1開始
- 28. 標記一個有序列表,在1之後的點開始
- 29. 表1從行1開始,不在行0
- 30. SQL - 從列表中開始和結束系列
戲是否真的重要?通常當我聽到類似這樣的問題時,這是因爲開發人員正試圖爲身份價值賦予意義,這幾乎從來都不是一個好設計。 –
你爲什麼在意?自動遞增ID(MySQL)或序列(Oracle)的唯一目的是提供唯一標識符 - 其值應該不重要。如果你確實試圖重置它,那麼任何使用原始作爲外鍵的東西現在都會中斷。 – mortsahl
也許他正在測試一個導入例程,並且每次都喜歡從1開始,因爲他以這種方式熟悉數據。 –