SQL Server’da Adlandırma Kuralları ve Standartları
Herkese merhaba,
Bu yazıda sizlere SQL Server’da adlandırma kuralları ve standartlarından bahsedeceğim. Adlandırma kuralları, veritabanını sonraki zamanlarda optimize ederken ya da başka bir veritabanı yöneticisinin neyin ne olduğunu anlaması açısından önemlidir. SQL Server’da en genel anlamda adlandırma işlemini aşağıda görmektesiniz. Başlıkları daha anlaşılır olması açısından. Türkçe’ye çevirmedim.
Table
Tablolar, verilerimizi veritabanında saklamak için kullanılır. Bir tablo adlandırılırken “tbl” öneki ve ardından tablo adı eklenerek yapılmalıdır. Tablo adları yazılırken çoğul olarak yazılmalıdır.
tblCalisanlar tblOgrenciler
Primary Key Constraint
Birincil anahtarlar, veritabanı tablosundaki kayıtları benzersiz şekilde tanımlayan ifadelerdir. Bir tablonun yalnızca bir tane birincil anahtarı olabilir. Birincil anahtarlar “PK_” öneki ve ardından tablo adı eklenerek yapılmalıdır.
PK_Calisanlar PK_Ogrenciler
Foreign Key Constraint
Yabancı anahtarlar, bağlantılı olduğu tablonun birincil anahtarına bağlı olan bir alandır. Yabancı anahtar adlandırma kurallarında “FK_” önekinin yanında hedef tablo adı ve ardından kaynak tablo adı olmalıdır.
FK_Siparisler_Calisanlar FK_Parcalar_Urunler
Unique Key Constraint
Benzersiz anahtarlar, bir veya daha fazla alanı, veritabanı tablosunda benzersiz olarak tanımlarlar. Birincil anahtarlar gibidir, yalnızca bir null değeri kabul edebilir. Benzersiz bir anahtar adlandırılırken “UQ_” öneki yanında tablo adı ve ardından sütun adı olmalıdır.
UQ_Calisanlar_EmailID UQ_Parcalar_ParcaKod
Default Constraint
Varsayılan kısıtlamalar, sütunlara herhangi bir değer verilmediğinde sütuna varsayılan bir değer eklerler. Adlandırma yapılırken “DF_” öneki yanında tablo adı ve ardından sütun adı olmalıdır.
DF_Calisanlar_AktifMi DF_Calisanlar_OlusturulmaTarihi
Check Constraint
Denetim Kısıtlamaları, tablonun her satırının belirlenen kurala uyması gereken, bir sütundaki iş kuralını tanımlayan ifadelerdir. Adlandırma yapılırken “CHK_” öneki yanında tablo adı ve ardından sütun adı olmalıdır.
CHK_Calisanlar_Ucret CHK_Ogrenci_Yas
User Defined Stored Procedures
Saklı Yordamlar yani Stored Prosedürler sunucu tarafında yürütülürler ve sonuçlarını istemci tarafına döndürmeden önce bir dizi eylem gerçekleştirirler. Stored prosedürler ağ trafiğinin azaltmasına da olanak tanırlar. Kullanıcı tanımlı saklı yordamlar oluştururken prosedürün adı öncesinde “sp_” ön eki kullanmamalıyız çünkü “Sp_” ön eki sistem tanımlı saklı yordamlar için kullanılıyor. Kullanıcı tanımlı saklı yordamlar adlandırılırken “usp_” ön ekinin yanı sıra, işlemin ve işlemin etki ettiği nesnelerinin de bulunması mümkündür. Kullanıcı tanımlı saklı yordam adlandırılırken “usp_” yanında yapılan işlem ve işlemin etki ettiği nesne de olmalıdır.
usp_Insert_Calisanlar usp_View_CalisanSiparisler
User Defined Functions
Fonksiyonlar, yalnızca giriş parametrelerini kabul eden, eylemler gerçekleştiren ve sonuç döndüren bir dizi SQL deyimleridir. Fonksiyonlar, yalnızca tek bir değer veya bir tabloyu döndürebilir. Kullanıcı tanımlı fonksiyonlar için adlandırma yapılırken “fn_” ön eki ve yapılan işlemi açıklayan kısa bir tanım olmalıdır.
fn_VergiyiHesapla fn_YasiHesapla
Views
Viewlar, kısacası sanal tablolar gibidir. Genel olarak çok kullandığınız sorgular için hazırlanırlar. Adlandırma yapılırken “vw_” ön eki ve sonrasında açıklayıcı bir isim bulunması gerekir.
vw_CalisanDetaylari vw_UrunDetaylari
Triggers
Tetikleyiciler veritabanı nesneleridir. Temel olarak tetikleyiciler ilgili bir DDL veya DML komut deyimi yürütüldüğünde otomatik olarak tetiklenen yapılardır. Adlandırma yapılırken “trg_” ön ekinin yanında yapılan işlem ve tablo adı da olmalıdır.
trg_Ins_Calisanlar trg_Upd_Calisanlar trg_Del_Calisanlar
Indexes
Indeksler, istenen verileri bulmak için SQL Server’da sorgu altyapısına yardımcı olan veritabanı nesneleridir. Indeksler, tablolara veya viewlar’a eklenebilirler. Adlandırma yapılırken “IX_” ön eki, ardından tablo adı ile sütun adına sahip olması gerekir.
IX_Calisan_Ad IX_Calisan_SicilNo
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.