Professional Documents
Culture Documents
Database Design
Database Design
BÖLÜM 1: GİRİŞ
Data (veri), ham veya işlenmemiş materyal. İşlendiği zaman information (enformasyon). Örneğin bir sınıftaki
her öğrencinin notu veri iken bu sınıfın not ortalaması information olarak adlandırılır.
Database (veri tabanı), genellikle bilgisayar sistemlerinde depolanan yapılandırılmış verilerden oluşan düzenli
bir koleksiyondur.
Veri tabanı geliştirme süreci 3 adımdan oluşur:
Analiz etmek (Analyze) Kavramsal veri modelleme, Tasarlamak (Design) Veri tabanı tasarımı,
Kurmak (Build) Veri tabanı oluşturma
Table instance (oluşturulan örnek) chart aşağıdakilerden oluşur;
Tablo adı, kolon adları, anahtarlar PK (birincil anahtar), her bir satırdaki veri için benzersiz tanımlayıcı,
FK (yabancı anahtar) tablodaki veriyi başka bir tablodaki verinin PK ile bağlar. Null, bir kolonda değer
bulunmasının zorunlu olduğunu gösterir.
Unique: Kolonda bulunan değerin benzersiz olduğunu gösterir.
Data type: Kolonda bulunan değerin tanımı ve biçimini tanımlar.
VERİ TABANI GELİŞTİRME SÜRECİ Adım 3 Veri tabanı Oluşturma: SQL Notlarına bakın. (İlk kısım)
Hardware (donanım): Bilgisayarın fiziksel kısımları.
Software (yazılım): Donanıma ne yapması gerektiğini söyleyen programlar (talimat setleri).
Operating System (işletim sistemi): Donanımı direkt olarak kontrol eden ve yöneten yazılım.
Application (uygulama): Belirli işlemleri yerine getirmek için özel olarak oluşturulan yazılım programı.
Client (istemci): İstemciler klavyesi, ekranı ve faresi olan iş istasyonları veya bilgisayarlardır.
Server (sunucu): İstemcilerden iş istekleri alan ve çalıştırıp sonuçlarını döndüren daha güçlü bilgisayarlardır.
Tier-2 sistemde istemciler sunucularla direkt iletişim kurabilirken, Tier-3 sistemde sunucu ile istemci arasında
üçüncü bir bilgisayarla iletişim kurar, üçüncü bilgisayar istekleri sunucuya yönlendirir buna application server
veya web server denir.
Grid computing (dağıtılmış hesaplama), çeşitli görevleri gerçekleştirmek için birlikte çalışan bir
bilgisayarlardır.
Cloud Computing (bulut bilişim), istendiği zaman kullanılabilen ve kullanıcılar arasında paylaşılan bilgisayar
kaynakları sağlayan, internet tabanlı bilişim hizmetlerinin genel adıdır.
Infrastructure (altyapı)
BÖLÜM 3: İLİŞKİLER
Cardinality (sayısallık) – How many ve Optionality (isteğe bağlılılık) – May or must?
Her çalışanın sadece ve sadece bir işi olmalıdır (must)
Her iş bir veya birkaç çalışan tarafından yapılabilir (may)
Varlıklar köşeli kutular ile ifade edilir, tekil isimler kullanılır ve büyük harflerle yazılır.
Zorunlu nitelikler * ile, isteğe bağlı nitelikler o ile, benzersiz tanımlayıcılar # ile gösterilir. Benzersiz
tanımlayıcılar her zaman zorunlu olduğundan ayrıca bir * işaretine gerek yoktur.
Düz çizgiler zorunluluğu, kesik çizgiler isteğe bağlılığı temsil eder. Must veya may
3lü çizgi (karga ayağı) sayısallığı ifade eder. One or more veya one and only one
Artificial UIDs, doğuştan olmayan sonradan eklenen değerler. Öğrenci numarası gibi.
Item Price yanlış tabloda kullanılmış. Bu ikinci kuralın ihlalidir. Item Price, Product tablosunda bulunmalı.
Geçişken bağımlılıklara izin vermez. Geçişken bağımlılık, bir varlığın özniteliğinin söz konusu
varlığın başka bir özniteliğine bağlı olmasıdır.
Eğer mağaza adresi değişirse, o mağazadan satın alınan bütün CDlerin
adresinin değişmesi gerekir.
Mağaza adresi CD numarasına (CD’nin UIDsi) bağlıdır. Ama aynı
zamanda mağaza ismine (UID olmayan) de bağlıdır. Bu 3NF kuralının
ihlalidir ve tablo normalize edilebilir.
Sub/Supertype’lar yaylar ile ifade edilebilir. Benzer özniteliklerin yaylar ile ifade edilmesine gerek yoktur.
Solda hiyerarşi, sağda rekürsif modelleme.
Option 2: Barred
relationship and Rental Date
RENTAL DATE’i UID yapmak farklı tarihlerde aynı
JEWELERY PIECE kiralamasına izin verir fakat aynı zamanda
diğer MOVIE STAR lar da aynı tarihte kiralayabilirler.
Her instance benzersiz değerlere sahip olduğundan model
buna izin verir ancak gerçek hayatta bu mümkün değildir.
Conditional non-transferability
Bazı durumlarda transfer edilebilirken örneğin
shift daha başlamamışken bazı durumlarda
transfer edilemez. Bu durum ERD’de
gösterilemeyeceğinden dökümantasyonda
belirtilmelidir.
Büyük hacimli varlıklar genelde sol üst veya sağ üst köşeye konur.
BÖLÜM 9: MAPPING (HARİTALAMA)
İlişkisel veri tabanı konseptlerine giriş
Peki tabloda aradığımız değeri bulmak için tek tek bütün satırlara mı bakacağız? Hayır. Bunun için SQL
kullanacağız. (SQL kısımları SQL Notları dosyasında mevcut bu dosya sadece veri tabanı tasarımını içerir.)
Unique Key olan PAYROLL_ID kısmı tabloda aynı değere sahip başka bir satır olamayacağı anlamına gelir.
Basit Haritalama : Dönüşüm süreci
İlişki haritalama
Many to many ve one to one ilişkilerin haritalanması. M:M Intersection entity FK sütunları tabloları gösterir.
O:O bir FK ve UK oluşturulur. Eğer ilişki tek taraflı zorunlu ise fk o tabloda oluşturulur.
Alttip Haritalama