或者我需要專門更新它們。情況是這樣的:我有一個有150萬行和90列的表格。我們已經對數據進行了大量的清理工作,並且需要知道是否應該重建索引,或者是否已經在該表的UPDATE和INSERT操作期間重建索引。如果我在現有行中插入行或更新值,那麼這些更新列的更新是那些索引?
1
A
回答
2
已經有先進的日期。當更新或插入(或刪除)完成時,所有約束都已檢查,索引更新並且觸發器也運行正常。這包括對錶格的索引視圖。
統計數據不更新,直到需要(這是查詢編譯時間),但這無關緊要
0
數據庫及時更新索引(unnless你明確告訴他們不要)
1
爲您更新/插入行到表中的索引更新。如果您正在進行大量的插入/更新,通常的做法是在開始流程之前刪除索引,然後重新創建它們以提高性能。除非確實需要,否則最好避免這種情況,因爲這有點讓人頭痛。
相關問題
- 1. 僅更新那些屬性
- 2. update_all在軌 - 利用那些行中的值更新多行
- 3. 帶sitecore的Lucene索引是否自動更新?如果沒有,那麼我如何更新索引?
- 4. SQL:更新列並在同一更新中引用這些列?
- 5. SQL如果要是那麼不匹配匹配更新插入
- 6. 如何插入新行或有效更新現有行?
- 7. 爲什麼有些值插入時,我在opencart更新設置?
- 8. Python session.commit()更新現有的行而不是插入新的行
- 9. 數據庫:插入新行或更新現有行?
- 10. MySQL:如果某些值更新列
- 11. iPhone:Sqlite更新或插入行
- 12. 插入或更新是否存在行
- 13. 在更新請求更新某些值
- 14. 爲多個行的現有值更新並插入新值
- 15. 更新後更新後的gridview行中的某些列爲空
- 16. 在MySQL中,如何更新現有行的某些列並從參考表中插入新行?
- 17. C#+ mysql我想選擇1000行然後更新那些選定的行
- 18. 插入觸發更新某些列
- 19. 插入新行,更新舊行:如何?
- 20. 更新新插入數據的索引
- 21. 如果存在更新XML列或在參考表中插入新行
- 22. saveAll()插入新行而不是更新
- 23. 鑑於索引值,我如何只更新Rails控制器中的這些值?
- 24. 是否插入/更新/刪除記錄自動更新索引?
- 25. 如果我從現有列表創建新列表<T>,那麼這些成員是否相等?
- 26. 更新或插入值
- 27. 使用Case語句要麼插入表或更新現有行
- 28. 更新行,如果一個特定的列值不同,否則插入新行
- 29. 插入,如果沒有什麼更新
- 30. Coredata總是更新行,而不是在swift中插入新行
從性能的角度來看,這個問題非常有趣;通常人們會說'索引加快你的查詢/ sql'。對於選擇這通常是正確的,但對於插入,更新和刪除可能是錯誤的。如果有索引需要維護,那麼RDBMS必須進行更多的磁盤訪問,爲非選擇語句做更多的工作等等。 – Karl