mengapa tidak mungkin mengakses data langsung dari tabel dengan mengabaikan B-tree? (kemungkinan besar dengan memindai baris demi baris tabel) bukankah itu lebih tepat daripada data yang tidak dapat diakses sama sekali?
Untuk menjawab pertanyaan Anda, dasar-dasar pengindeksan menjadi lebih praktis - Indeks terdiri dari sekumpulan halaman (simpul indeks) yang disusun dalam struktur B-tree. Struktur ini bersifat hierarkis, dengan simpul akar di bagian atas hierarki dan simpul daun di bagian bawah. Untuk lebih jelasnya lihat di sini .
Juga, seperti yang dijelaskan banyak orang, Clustered Indexes == Tabel asli yang dipesan secara fisik dengan satu atau lebih kunci atau kolom. Jadi, ketika Indeks berkerumun dinonaktifkan, baris datanya tidak dapat diakses. Anda tidak akan dapat Menyisipkan data apa pun (untuk Indeks Non-Clustered, Sisipan akan berhasil - tetapi itu tidak sepenuhnya terkait dengan posting ini - karena di sini pembahasannya adalah Indeks Clustered) juga atau tidak satu pun operasi Reorganisasi akan berfungsi.
Di bawah ini akan menjelaskan Anda secara rinci:
kami akan menggunakan basis data Adventureworks untuk melihat efek menonaktifkan CLUSTERED Index.
Sekarang periksa jumlah baris dalam tabel:
Sekarang nonaktifkan Indeks Clustered
Sekarang pilih jumlah baris dari tabel. Kali ini akan salah dengan pesan di bawah ini:
Bahkan operasi reorganisasi tidak berfungsi !!
Sekarang membangun kembali Indeks Clustered dan itu akan berfungsi dengan baik.
Pilih tabel untuk melihat apakah kita dapat mengakses data
Jadi intinya adalah bahwa, jika kita menonaktifkan Indeks Clustered, maka data dalam tabel masih ada, tetapi tidak akan dapat diakses untuk apa pun selain operasi Drop atau membangun kembali. Semua Indeks dan tampilan Non-clustered terkait tidak akan tersedia serta Kunci Asing referensi tabel akan dinonaktifkan dan di sana dengan memimpin KEGAGALAN untuk semua pertanyaan yang mereferensikan tabel.
Catatan: Tidak ada opsi untuk MENGAKTIFKAN Indeks. Anda harus MEMBANGUN KEMBALI itu.