Konu Araçları | Seçenekler: | Gösterim Stili
Tarih
16/11/2009 16:41
Konu Sahibi
arzuu
Yorumlar
5
Okunma
3570
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy
Kullanici Avatari

arzuu

desire
Aktivasyon Bekleyen
 29
 341
 38
 17/02/2009
 -
 
 Ofis XP
 24/04/2010,10:04
Aslında ilişkisel veri tabanı tasarımından ziyade bir tablo içerisinde yer alacak kaydın nelerden oluşma­sına karar vermeye yarayan normalizasyon kuralları başlı başına bir işlemdir.Genel kabul görmüş 5 normalizasyon kuralı vardır.Bu kurallar, ilişkisel veritabanının tanımı ile birlikte ortaya konmuştur.

1. Normalizasyon Kuralı
Bir satırdaki bir alan yalnızca bir tek bilgi içerebilir. Örneğin kitap tablosunda, birden fazla yazarı olan kitap için yazar1, yazar2, yazar3 diye alanlar açsaydık, bu kurala uymamış olurduk. Böyle bir durumda, ayrıca yazarlar tablosu da oluşturarak kuralı çiğnememiş oluruz.

DİKKAT:Verileri virgül veya bir başka karakter ile ayırıp aynı alana girmek. Daha sonra program içerisinde split ile bu değerleri ayırmak. Ancak bu ilişkisel veritaba­nının doğasına terstir.

2. Normalizasyon Kuralı
Bir tablo için, anahtar olmayan her alan, birincil anahtar olarak tanımlı tüm alanlara bağlı olmak zorundadır. Mesela, Ödünç tablosunda KitapAdi diye bir alan eklese idik, bu sadece ödünç verilen kitap ile ilgili bir bilgi olacaktı ve oduncNo'na bağlı bir nitelik olmayacaktı. Bunu çözmek için, kitap adlarını ayrı bir tabloda tutarız.

3. Normalizasyon Kuralı
Bir tablo için, anahtarı olmayan bir alan, anahtarı olma­yan başka hiç bir alana bağlı olamaz. Örneğin, kitapları­mız için cilt tipi adında bir alan ekleyip burada da karton kapak için K, deri cilt için D, spiral cilt için S yazsaydık, bu kodlama, kitap tablosunun birincil anahtarı olan kitapNo alanına bağlı bir kodlama olmayacaktı. Çünkü bu kodlama bir başka anahtarı olmayan alana bağlıdır. Bunun sonucunda da veritabanımızda, karşılığı olmayan bir kodlama yer almış olacaktır. Cilt tipi bilgisini kodlu olarak tutan alan aslında cilt tipi açıklaması olan başka bir alana bağlıdır. Bu ilişki başka bir tabloda tutulmalıdır.

Bu durumda, ciltSekli adında bir tablo açmamız gerekir. Bu tablonun alanları da ciltTipKodu ve ciltSekli olmalıdır. Ancak bundan sonra, kitaplar tablosunda ciltTipi adında bir sütun açıp buraya da D,S,K gibi kodları yazabiliriz.

4. Normalizasyon Kuralı
Birincil anahtar alanlar ile anahtarı olmayan alanlar arasında, birden fazla bağımsız bire-çok ilişkisine izin verilmez. Örneğin, tablomuzda yer alan bir kitap hem hikaye kitabı ,hem de kişisel gelişim kitabı olabilir.(Bu durumda kitabın adı, kişisel gelişim hikayeleri olurdu her halde) Bu durumu Kitap tablosunda nasıl ifade edeceğiz? 4.Normalizasyon kuralını sağlamak için, her bağımsız bire çok ilişki için ayrı bir tablo oluşturmak gerekir. Bu örnekte, türler diye bir tablo açmamız gerekiyor. Daha sonra kitapTurleri diye bir başka tablo daha açma­mız gerekiyor. ‘Kişisel Gelişim Hikayeleri' adlı kitap için, öncelikle kitap numarası, Hikaye bölümünün kodunun yer aldığı bir satır; ardından da yine kitap numarası, ardından da kişisel gelişim türünün kodunun aldığı yeni bir satır daha eklemek gerekir.

5. Normalizasyon Kuralı
Tekrarlamaları ortadan kaldırmak için her bir tabloyu mümkün olduğunca küçük parçalara bölmek gerekir. Aslında ilk 4 kural sonuçta bu işe yarar ancak, bu kurallar kapsamında olmayan tekrarlamalar da 5.nolu normali­zasyon kuralı ile giderilir.

Örneğin, kitaplarımız için bir edinme şekli bilgisi girilecek ,sütun eklemek isteyelim: Bu bölüme girilebile­cek bilgiler bellidir: Bağış veya satın alma.

Bu bilgileri başka bir tabloda tutabiliriz. Böylelikle, kullanıcıların bu alana gelişi güzel bilgiler girmesini engellemiş oluruz. Bu da sorgulama esnasında verile­rimiz arasında bir tutarlılık sağlar. Bu işlem sonucunda, tutarsızlıklara neden olabilecek ve sık tekrarlayan veriler başka bir tabloya taşınmış olur. Bu tablo için, veritabanı programlamada ‘look-up table' terimi kullanılır. Ancak, veritabanı normalizasyon kuralları, bir ilişkisel veritabanının tasarlanma aşamalarını değil de ilişkisel veritabanında yer alacak kayıtların ilişkisel verita­banı ile uyumlu olup olmadığını denetlemeye yöneliktir.

Özetle ilişkisel bir veritabanı tasarımı şu dört öğeyi barındırmalıdır.

-Veri tekrarı yapılmamalıdır
-Boş yer mümkün olduğunca az olmalıdır.
-Veri bütünlüğü sağlanmalıdır.
-Veriler, aralarında bir ilişki tanımlanmaya müsait olmalıdır.

Alıntıdır.



Kullanici Avatari

Bilgisayarcı

Atçalı
Aktif Üye
 Belirtilmemiş
 658
 34
 29/01/2008
410
 Antalya
 
 Ofis 2003
 01/11/2011,15:17
Başlı ne demek? Kaynak mı demek istiyor? ingilizceden mi çeviri bu? Orjinali nedir?

Cümleleri anlamakta zorluk çektim de, o bakımdan Img-cray


Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes



Kullanici Avatari

arzuu

desire
Aktivasyon Bekleyen
 29
 341
 38
 17/02/2009
 -
 
 Ofis XP
 24/04/2010,10:04
Sn bilgisayarcı düzelttim.



Kullanici Avatari

Bilgisayarcı

Atçalı
Aktif Üye
 Belirtilmemiş
 658
 34
 29/01/2008
410
 Antalya
 
 Ofis 2003
 01/11/2011,15:17
Bağğlııı Lol tamam tamamLol


Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes



Kullanici Avatari

arzuu

desire
Aktivasyon Bekleyen
 29
 341
 38
 17/02/2009
 -
 
 Ofis XP
 24/04/2010,10:04
(16/11/2009 17:25)Bilgisayarcı Adlı Kullanıcıdan Alıntı: Bağğlııı Lol tamam tamamLol

bağlı başlı olayImg-grin



Kullanici Avatari

benremix

Onursal Üye
Onursal Üye
RA.... SO....
 51
 4.441
 127
 17/05/2009
365
 Ankara
 Şirket Sahibi
 Ofis 2010 64 Bit
 19/09/2018,20:51
Paylaşım için teşekkürler. Saygılar...


Bilgi paylaşıldıkça çoğalır....
Her engel, yaşam koşullarınızı daha iyileştirecek bir fırsattır.


Access için her zaman lazım olacak konu başlıkları listesi




Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  SQL Veritabanı yaratmak mehmetdemiral 5 3.349 02/02/2012, 22:38
Son Yorum: mehmetdemiral
  Baştan Sona Sql Veritabanı Oluşturma arzuu 9 8.300 08/01/2012, 17:15
Son Yorum: elektrikci
  sql veritabanı oluşturda hata.. Batuhan 2 1.785 28/08/2010, 15:50
Son Yorum: Batuhan

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2018 MyBB Group.