Bu kadar zaman geçtikten sonra SQL 2005’le ilgili hala yeni bir şey öğrenebilmek biraz şaşırtıcı : ) Ama aynı zamanda önemli bir ayrıntı daha öğrenmenin keyfi de var bir yandan.
SQL 2005 öncesi SQL Server sürümleri için, toplu data yüklemesi (özellikle update) yapacağımız durumlar için, indeksleri düşürmek, toplu işlemi yapmak ve ardından indeksleri yeniden oluşturmak tavsiye edilirdi.
Oysa SQL Server toplu bir değişikliği, tablo seviyesinde ya da tek tek indeksler seviyesinde yapabiliyor. Yani eğer yeterince fazla miktarda veri değişikliği olacaksa ve etkilenen fazlaca indeks varsa, SQL Server analiz yapıp şuna karar verebiliyor: Değişen veriyi ilgili indekse göre sırala, ilgili indeksi update et, sonraki indekse geç ve değişen veriyi ona göre sırala ve sonra ilgili indeksi update et… Böyle böyle indeks sayısı kadar devam et.
Eğer yaptığınız bir bulk update’in sorgu planına baktığınızda etkilenen indeks sayısı kadar update işlemi görüyorsanız (siz tek bir update çalıştırdığınız halde), indeks seviyesinde update tercih edilmiş demektir. Tek bir update görüyorsanız, klasik tablo seviyesi update uygulanmış demektir.