Saya mengalami kesulitan menemukan sumber daya yang pasti di mana saja ini, jadi semoga seorang guru dapat memberi saya jawaban di sini.
Saya memiliki tabel yang sangat besar yang harus kami tambahkan kolom. Indeks berkerumun sangat terfragmentasi, dan saya ingin melakukan ALTER INDEX REBUILD
untuk membersihkannya.
Saya juga biasanya melakukan ALTER TABLE REBUILD
ketika saya mengubah kolom karena ini membersihkan semua petunjuk atau pemisahan dari operasi itu.
Apakah saya perlu melakukan keduanya karena kita berbicara tentang indeks berkerumun, yang pada dasarnya adalah tabel?
Kecurigaan saya adalah ALTER INDEX REBUILD
pada clustered tidak akan memperbarui semua yang ALTER TABLE
akan, tetapi saya juga takut bahwa ALTER TABLE
tidak akan membersihkan indeks fragmentasi.
Jawaban:
Jika Anda membangun kembali indeks berkerumun seharusnya tidak perlu membangun kembali tabel. Jika tabel itu tumpukan (tidak memiliki indeks berkerumun) maka Anda mungkin ingin membangunnya kembali.
sumber
ALTER TABLE REBUILD
karena ini akan memperbaiki pointer yang tidak diperbaiki dalam indeks yang dibangun kembali. Apakah ini tidak lagi terjadi?Bangun kembali menjatuhkan dan membuat ulang indeks. Saat Anda membuat indeks berkerumun, itu menata ulang baris tabel di samping membuat CIX (tabel tanpa CIX adalah tumpukan).
sumber