Anasayfa / Yazılım / SQL / Non-Clustered Index Oluşturma

Non-Clustered Index Oluşturma

Bu yazımda mevcut bir veritabanı üzerinde bir tablo oluşturup bu tablonun bazı alanlarına Non-Clustered index özelliği vermek istiyorum. Bu işlemi T-SQL ile değil, normal design yolu ile gerçekleştireceğim, dolayısı ile resmederek konuyu anlatıyorum. SQL Server Management Studio altında Deneme adlı bir Database oluşturdum. Daha sonra bu DataBase üzerinde Tables alanında sağ tıklayarak new table diyorum.

281201

281202

Açılan tablo design alanında tablomu oluşturuyorum. Aşağıdaki şekilde olduğu gibi sütunları ve veri tiplerini verdim. Daha sonra tablomu Calisanlar olarak kaydediyorum.

281203

Alanlarımı oluşturdum, veri tiplerini belirledim. Şimdi CalisanID kısmında sağ tıklıyorum ve bu alanı Set Primary Key yapıyorum, yani clustered indeksleme yapıyorum.

281204

Daha sonra yine bu kolon seçili iken altta yer alan Column Properties özelliklerinden Identity Specification kısmını, IsIdentity kısmını YES yapıyorum, burayı YES yapınca altta Identity Increment ve Identity Seed otomatik olarak 1 oluyor. Bu ayar aslında şu anda konumuzla alakalı değil ama yeri gelmişken açıklama yapayım. Şimdi CalisanID kolonumuza verilen değerin eşsiz bir değer olmasını istediğim için bu alanı YES yapıyorum ve böylelikle SQL server bu tablo için her yeni bir satırda CalisanID kısmındaki veriyi kendisi otomatik olarak verecek. Daha sonra bu değer her seferinde 1 artacak çünkü Increment değerimiz de 1. Seed değerimiz de 1 olduğu için başlangıcımız 1’den başlayacak.

281205

Daha sonra tablomuzun üst sekmesinde sağ tıklıyoruz ve tablomuzu Calisanlar adını vererek kaydediyoruz.

281206

281207

Şimdi gelelim asıl konumuza, bir tablomuz var bu tablomuza nasıl non-clustered index ekleriz. Ben Calisanlar tablosunda CalisanAd ve CalisanSoyad alanlarına non-clustered index eklemek istiyorum.

Bunun için öncelikle Deneme veritabanı içinde Calisanlar Tablosunun içeriğini genişletiyorum. (Yandaki + tuşları)Indexes görene kadar genişlettim, aşağıdaki resimde görebilirsiniz.

281208

Görüldüğü üzere şu anda sadece clustered index var. Indexes yazan klasör simgesi üzerinde sağ tıklıyorum. Buradan New Index > Non-Clustered Index seçiyorum

281209

Karşıma bir pencere çıkıyor. Görüldüğü üzere şu anda eklenmiş bir alan yok.

281210

Ben IndexName alanına tamamen keyfi olarak ismailgursoy adını veriyorum, tabi ciddi iş yaparken daha uygun isimler vermek gerek 🙂

Daha sonra ADD butonuna tıklayarak bu sefer karşıma çıkan pencereden CalisanAD ve CalisanSoyad alanlarını tikleyerek OK diyorum ve bu pencereyi kapatıyorum. Daha sonra alttaki pencereye seçtiğim alanlar geliyor, görüldüğü üzere burada görebiliyorum ve burdan da OK diyerek çıkıyorum.

281211

281212

İşlem bu kadar basit. Artık bu iki alana non-clustered indeks özelliği kazandırdım. Birde durumu object explorer üzerinde görelim.

Önce burayı Refresh ediyorum.

281213

Aşağıdaki resimde gördüğünüz üzere non-clustered indeks tanımlanmış. Bu kadar basit. Bir sonraki yazımda görüşmek dileği ile..

281214

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir