Varlık-İlişki (E-R) Modeli

BLP 1005 — Veritabanı Yönetim Sistemleri

Öğr. Gör. Oktay Cesur

2026-09-22

Ele Alınacak Temel Sorular

  • Veritabanı tasarlarken neden doğrudan tablo çizmeye başlanmaz?
  • Bir bilgi parçası ne zaman “varlık”, ne zaman “nitelik” olarak modellenir?
  • Aday anahtarlar arasından birincil anahtar hangi teknik ölçütlerle seçilir?
  • Tek bir nitelik tekilliği sağlayamadığında bileşik anahtar nasıl kurulur?
  • Kardinalite ile katılım arasındaki temel fark nedir?
  • Crow’s Foot notasyonundaki uç sembolleri iş kurallarını nasıl görselleştirir?
  • 1:N, N:M ve 1:1 ilişkiler fiziksel tablolara ve yabancı anahtarlara nasıl dönüştürülür?
  • Referans bütünlüğü veritabanındaki yetim kayıtları hangi mekanizmayla engeller?

İş Kuralından Veri Modeline: Neden Doğrudan Tablo Çizilmez?

Kütüphane Senaryosu ve Günlük İş Kuralları

  • Kütüphaneye kayıt yaptıran üyeler bulunur.
  • Raflarda okuyucuyu bekleyen binlerce kitap yer alır.
  • Üyelerin bu kitapları ödünç alıp iade ettikleri hareketli bir ödünç süreci yürütülür.

Doğrudan Tablo Çizme Girişiminin Tıkandığı Noktalar

  • Kitap tablosuna ödünç alan üyeyi mi yazacağız?
  • Bir üye aynı anda üç kitap ödünç aldığında ne olacak?
  • Kitap iade edilip haftalar sonra başka bir üyeye verildiğinde eski üyenin kaydını silecek miyiz, yoksa aynı kitabı her ödünç işleminde yeni bir satır olarak tekrar mı ekleyeceğiz?
İş Kuralları (Sözel İstekler)
          │
          ▼
[ Kavramsal Tasarım: E-R Modeli ]  ──> Veritabanı yazılımından ve SQL sözdiziminden bağımsız modelleme
          │
          ▼
İlişkisel Şema (Fiziksel Tablolar)

Gereksinimleri Çözümleme: Varlık ve Nitelik Ayrımı

Kütüphane Gereksinim Metni

“Kütüphanemize kayıtlı üyelerin adını, soyadını, üye numarasını ve telefon bilgisini tutmak istiyoruz. Ayrıca kütüphanedeki her kitabın demirbaş numarasını, başlığını, yazarını ve basım yılını kaydetmeliyiz.”

Kavramsal Yapı Taşları

  • Varlık (Entity): Gerçek dünyada var olan, hakkında bilgi toplanıp saklanmaya değer, diğer nesnelerden bağımsız olarak ayırt edilebilen somut veya soyut nesnelerdir.
    • Benzer varlıkların kümesine varlık kümesi (entity set) denir.
  • Nitelik (Attribute): Bir varlığın durumunu, boyutunu veya özelliklerini tanımlayan her bir bilgi parçasıdır.

Kütüphane İçin Ayrım

Kavramsal Düzey Üye Alanı Kitap Alanı
Varlık (Entity) Üye (Bağımsız nesne) Kitap (Bağımsız nesne)
Nitelikler (Attributes) ad, soyad, uye_numarasi, telefon demirbas_numarasi, baslik, yazar, basim_yili

Ayrım Ölçütü: Bir kavramın varlık mı yoksa nitelik mi olduğunu belirleyen ölçüt, sistem içindeki bağımsızlığıdır. Telefon numarası kütüphanede tek başına dolaşan bağımsız bir nesne değildir; üyenin iletişim niteliğidir. Buna karşılık kitap tek başına bağımsız bir nesnedir; bu nedenle varlıktır.

Kimlik Arayışı: Aday Anahtar ve Birincil Anahtar Seçimi

Problem: Varlık Örneklerini Ayırt Etme

  • Kütüphanede aynı ad ve soyadı taşıyan iki farklı üye bulunabilir.
  • Tamamen aynı başlığa sahip farklı basım kitaplar yer alabilir.

Aday Anahtarlar (Candidate Keys)

Her bir kaydı tekil olarak tanımlayabilme potansiyeline sahip, boş bırakılamaz nitelik veya nitelik gruplarıdır. - Üye Varlığı Adayları: - uye_numarasi (Kurum tarafından üretilen tekil numara) - tc_kimlik_no (Devlet tarafından verilen tekil kimlik) - eposta (Kişiye özel tekil iletişim adresi)

Birincil Anahtar (Primary Key) Seçim Kriterleri

  1. Değişmezlik: Seçilen değer zaman içinde değişmemelidir. E-posta adresi tekil olsa bile kullanıcının isteğiyle güncellenebilir; temel kimlik yapılması sakıncalıdır.
  2. Sadeliği ve Kurumsal Denetim: tc_kimlik_no dış kuruma aittir, 11 hanelidir ve kişisel verilerin korunması açısından hassastır. Kurumun kendi ürettiği uye_numarasi ise kurum denetimindedir ve daha yalındır.
  3. Karar: Üye varlığında birincil anahtar olarak uye_numarasi seçilir.

Kural: Birincil anahtar mutlaka otomatik artan tamsayı olmak zorunda değildir. Kitap varlığı için seçilen demirbas_numarasi, kurum standardına uygun KTP-2026-0042 gibi metinsel bir kod olabilir. Tekilliği sağladığı ve boş bırakılmadığı sürece metinsel kodlar da geçerli birincil anahtardır.

Tek Nitelik Yetmediğinde: Bileşik Anahtar (Composite Key)

Sorun: Tek Nitelik Tekilliği Sağlayamadığında

  • Bazı varlık veya yerleşim modellerinde tek bir alan kaydı diğerlerinden ayırmaya yetmez.
  • Tekilliği kurmak için iki veya daha fazla niteliğin birleşimi zorunlu hale gelir.

Kütüphane Raf Konumu Senaryosu

Kitapların kütüphane binasındaki fiziksel raf konumlarını modelleyelim:

[ Oda 101 ] ──> Raf 1, Raf 2, Raf 3
[ Oda 102 ] ──> Raf 1, Raf 2, Raf 3
  • raf_no = 3 tek başına yetersizdir: Oda 101’de de Raf 3 vardır, Oda 102’de de Raf 3 vardır.
  • oda_no = 101 tek başına yetersizdir: Oda 101 içinde onlarca farklı raf bulunur.

Mekanizma: Niteliklerin Birlikte Kimlik Oluşturması

  • Çözüm: İki nitelik bir araya getirilerek Bileşik Anahtar (Composite Key) tanımlanır.
  • Bileşik Anahtar: (oda_no, raf_no)
  • (101, 3) ikilisi kütüphane genelinde tek bir fiziksel rafı kesin ve benzersiz olarak işaret eder.

Varlıklar Arasındaki Bağ: İlişki ve Kardinalite

İlişki (Relationship) Tanımı

İki veya daha fazla varlık arasındaki anlamsal bağlantıdır. Kütüphane senaryomuzda Üye ile Kitap arasındaki eylem “Ödünç Alma” ilişkisidir.

Kardinalite: En Çok Kaç? (Üst Sınır)

Bir varlığın ilişkili olduğu diğer varlık kümesinden en fazla kaç varlıkla eşleşebileceğini belirler.

1. Bire Çok (1:N)
   Raf ──────────────< Kitap
   Bir rafta birden çok kitap bulunabilir; her kitap aynı anda yalnızca tek bir raftadır.

2. Çoka Çok (N:M)
   Üye >─────────────< Kitap
   Bir üye birden çok kitap ödünç alabilir; bir kitap zaman içinde farklı üyelerce ödünç alınabilir.

3. Bire Bir (1:1)
   Üye ─────────────── Kütüphane Kartı
   Her üyenin en fazla bir kartı olabilir; her kart yalnızca tek bir üyeye tanımlanır.

Katılım Kuralları: En Az Kaç Eşleşme? (Zorunlu mu?)

Katılım (Participation) Tanımı

Bir varlığın o ilişkide yer almasının zorunlu olup olmadığını, yani en az kaç eşleşmenin bulunması gerektiğini belirler.

İki Temel Katılım Türü

  • Zorunlu Katılım (Total / Mandatory - En az 1): Varlık kümesindeki her bir elemanın bu ilişkide mutlaka en az bir kez yer alması gerekir.
  • İsteğe Bağlı Katılım (Partial / Optional - En az 0): Varlık kümesindeki bir elemanın bu ilişkide yer alması zorunlu değildir; ilişkisiz olarak da sistemde varlığını sürdürebilir.

Kütüphane Senaryosunda Katılım Analizi

  • Üye Varlığı: Kütüphaneye yeni kaydolan bir üye henüz hiç kitap ödünç almamış olabilir. Katılım: İsteğe Bağlı (En az 0).
  • Kitap Varlığı: Rafta yeni satın alınmış bir kitap henüz hiç ödünç verilmemiş olabilir. Katılım: İsteğe Bağlı (En az 0).
  • Ödünç Alma İşlem Kaydı: Bir ödünç kaydının mutlaka bir üyeye ve bir kitaba ait olması şarttır; üyesiz veya kitapsız ödünç kaydı var olamaz. Katılım: Zorunlu (En az 1).
Boyut Soru Değer Aralığı Şemaya Etkisi
Kardinalite En çok kaç? (Üst sınır) 1 veya N Yabancı anahtarın nereye konacağını belirler
Katılım En az kaç? (Alt sınır) 0 veya 1 Alanın boş (NULL) kalıp kalamayacağını belirler

Crow’s Foot Notasyonu ve Uç Sembolleri

Neden Crow’s Foot (Karga Ayağı)?

Kavramsal modelleri görselleştirmede endüstri standardıdır; ilişkisel tablolara doğrudan eşlenebilen yalın bir sembol yapısına sahiptir.

Temel Gösterim Kuralları

  • Varlık: İki bölmeli dikdörtgen kutu (Üstte varlık adı, altta nitelikler; birincil anahtar yanında PK simgesi).
  • İlişki: Varlıkları bağlayan düz çizgi ve üzerinde ilişkinin adı.
  • Uç Sembolleri: Çizginin varlık kutusuna bağlandığı uç hem kardinaliteyi hem katılımı aynı anda gösterir:
Sembol      Adı                  Katılım (İç Sembol)     Kardinalite (Dış Sembol)
──────      ───                  ───────────────────     ────────────────────────
  ||        Tam Olarak Bir       Zorunlu (en az 1)       Tekil (en çok 1)
  o|        Sıfır veya Bir       İsteğe Bağlı (en az 0)  Tekil (en çok 1)
  >|        Bir veya Çok         Zorunlu (en az 1)       Çoğul (en çok N)
  o<        Sıfır veya Çok       İsteğe Bağlı (en az 0)  Çoğul (en çok N)

Kural: Kutuya yakın olan iç sembol katılımı (alt sınır: daire = 0, dik çizgi = 1); çizginin ucundaki dış sembol kardinaliteyi (üst sınır: dik çizgi = 1, çatal = N) temsil eder.

Kavramsal E-R Diyagramı: Kütüphane Modeli

+--------------------------+                               +--------------------------+
|           UYE            |                               |          KITAP           |
+--------------------------+                               +--------------------------+
| PK  uye_numarasi         |                               | PK  demirbas_numarasi    |
|     ad_soyad             |          Ödünç Alma           |     baslik               |
|     telefon              |o<───────────────────────────>o|     yazar                |
+--------------------------+          /          \         +--------------------------+
                                     /            \
                              [alis_tarihi]   [iade_tarihi]

Diyagramın Anlattığı Kurallar

  • UYE ile KITAP arasında N:M “Ödünç Alma” ilişkisi kurulmuştur.
  • Her iki uçtaki o< sembolü, bir üyenin sıfır veya çok kitap alabileceğini; bir kitabın da sıfır veya çok kez ödünç verilebileceğini (isteğe bağlı katılım, çoğul kardinalite) belirtir.
  • alis_tarihi ve iade_tarihi nitelikleri tek başına üyenin veya kitabın değil, bu ödünç eyleminin nitelikleridir.

Hatırlatma: Bu diyagram henüz bir veritabanı tablosu değildir. İş kurallarının kağıt üzerindeki kavramsal mimarisidir.

Kavramsal Modelden İlişkisel Şemaya Dönüşüm

Temel Kavram Ayrımı: Bağıntı vs İlişki

  • Bağıntı (relation): İlişkisel modelde iki boyutlu tabloya verilen matematiksel addır.
  • İlişki (relationship): Kavramsal modeldeki varlıklar arasındaki bağa/eyleme verilen addır.
  • İlişkisel veritabanı kavramı tabloların matematiksel bağıntılar olmasından gelir; aralarındaki oklardan türemez.

Dönüşümün Temel Kuralları

  1. Varlıklar Tablo Olur:
    • uye tablosu: (uye_numarasi, ad_soyad, telefon)
    • kitap tablosu: (demirbas_numarasi, baslik, yazar)
  2. Çizgiler Bağımsız Kablo Değildir:
    • Varlıklar arasındaki ilişkiler veritabanında fiziksel bağlantılarla değil, Yabancı Anahtar (Foreign Key - FK) sütunları ile kurulur.
  3. Yabancı Anahtar (FK) Tanımı:
    • Bir tablodaki satırın, başka bir tablodaki tekil bir satırı (genellikle birincil anahtarı) işaret etmesini sağlayan referans sütunudur.

Soru: Yabancı anahtar hangi tabloya, nasıl yerleştirilecek? Bu sorunun cevabını ilişkinin türü (1:N, N:M, 1:1) belirler.

1:N İlişkilerin Dönüşümü: Çok Tarafına Yabancı Anahtar

Senaryo: Raf (1) ↔︎ Kitap (N)

Bir rafta birden çok kitap durabilir; her kitap ise tek bir rafta yer alır.

Seçenekleri Değerlendirelim

  • Seçenek 1: Yabancı anahtarı “1” tarafına (raf tablosuna) koymayı deneyelim:
    • Rafta 100 kitap varsa, raf tablosundaki tek bir hücreye 100 farklı kitap numarası yazmamız gerekir. Bu durum atomiklik kuralını yıkar.
    • Alternatif olarak her kitap için raf satırını 100 kez kopyalarsak, raf adı ve konumu yüzlerce kez yinelenir; büyük veri tekrarı oluşur.
  • Seçenek 2: Yabancı anahtarı “çok” tarafına (kitap tablosuna) koyalım:
    • kitap tablosuna raf_kodu (FK) sütunu eklenir.
    • Her kitap tek bir rafta durduğu için, kitap tablosundaki her satır tek bir raf_kodu taşır. Hücre bölünmez, raf bilgisi tekrar etmez.
[ raf ]                                      [ kitap ]
PK: raf_kodu                                 PK: demirbas_numarasi
    oda_no                                       baslik
                                             FK: raf_kodu  ───────> raf.raf_kodu

Kural: 1:N ilişkilerin ilişkisel şemaya dönüşümünde yabancı anahtar daima “çok” (N) tarafındaki tabloya eklenir. Bağımsız ek tablo açılmaz.

N:M İlişkilerin Dönüşümü: Basit Yaklaşımlar Neden Tıkanır?

Senaryo: Üye (N) ↔︎ Kitap (M) (Ödünç Alma Eylemi)

Bir üye birden çok kitap alabilir; bir kitap zaman içinde birden çok üyeye verilebilir. Ayrıca bu eylemin alis_tarihi ve iade_tarihi nitelikleri vardır.

Basit Yaklaşımların Çöküşü

Yaklaşım 1: Üye Tablosuna Kitap Bilgisi Eklemek
uye (uye_numarasi, ad_soyad, demirbas_numarasi)
└── Üye ikinci bir kitap aldığında ne olacak?
    ├── `demirbas_no_2`, `demirbas_no_3` sütunları açmak esnekliği yok eder.
    └── Üyeyi her kitap için yeni satır olarak yazmak üye bilgilerini sürekli tekrarlar.

Yaklaşım 2: Kitap Tablosuna Üye Bilgisi Eklemek
kitap (demirbas_numarasi, baslik, uye_numarasi)
└── Kitap ekimde Ahmet'e verildi (Ahmet yazıldı).
    Kasımda kitap Ayşe'ye verildiğinde Ayşe'nin numarası Ahmet'in üzerine yazılır.
    SONUÇ: Kitabın geçmişe dönük bütün ödünç hareketleri geri getirilemez biçimde silinir.

Sınır: N:M ilişkiler, varlık tablolarından birinin içine yabancı anahtar eklenerek çözülemez.

N:M İlişkilerin Çözümü: Bağlantı Tablosu (Junction Table)

Çözüm Mekanizması: Üçüncü Tablo

İki varlık tablosu arasına bağımsız bir bağlantı tablosu (junction / bridge table) yerleştirilir. Kütüphanemizdeki bu tablo odunc tablosudur.

odunc Bağlantı Tablosunun Anatomisi

  1. Fiziksel bir nesneyi değil, gerçekleşen bir eylemi temsil eder.
  2. İlişkili iki varlığın birincil anahtarlarını yabancı anahtar olarak barındırır:
    • uye_numarasi (FK ──> uye.uye_numarasi)
    • demirbas_numarasi (FK ──> kitap.demirbas_numarasi)
  3. Eyleme özgü nitelikleri kendi üzerinde saklar: alis_tarihi, iade_tarihi.
[ uye ]                 [ odunc ] (Bağlantı Tablosu)                 [ kitap ]
uye_numarasi (PK) <───┐   uye_numarasi (FK)                           demirbas_numarasi (PK)
                      └── demirbas_numarasi (FK) ───────────────────>
                          alis_tarihi
                          iade_tarihi

Mekanik Sonuç

  • Çözülemeyen N:M ilişkisi, iki adet temiz 1:N ilişkiye bölünmüş olur:
    • uye (1) ───< odunc (N) (Bir üyenin birden çok ödünç kaydı olabilir)
    • kitap (1) ───< odunc (N) (Bir kitabın zaman içinde birden çok ödünç kaydı olabilir)
  • Tekillik: Ya (uye_numarasi, demirbas_numarasi, alis_tarihi) bileşik anahtarıyla ya da bağımsız bir odunc_id (veya odunc_no) anahtarıyla sağlanır.

1:1 İlişkilerin Dönüşümü ve Tekillik Kısıtı

Senaryo: Üye (1) ↔︎ Kütüphane Kartı (1)

Her üyenin en fazla bir kartı olabilir; her kart yalnızca tek bir üyeye aittir.

Anahtar Yerleşimi

  • Yabancı anahtar iki tablodan birine eklenebilir. Genellikle katılımı zorunlu olan veya daha sık sorgulanan tabloya konur.
  • Örnek: kutuphane_karti tablosuna uye_numarasi (FK) ekleyelim.

Kritik Sınır Koşulu: Yabancı Anahtar Tek Başına Yetmez

  • Normal bir yabancı anahtar sütununa aynı değer birden fazla kez yazılabilir (tıpkı 1:N ilişkide olduğu gibi).
  • Eğer ek bir kısıt koymazsak, kutuphane_karti tablosuna aynı uye_numarasi ile üç farklı kart satırı girilebilir.
  • Bu durumda sistem farkında olmadan 1:N ilişkiye kayar ve bir üyenin birden çok kartı oluşur.
kutuphane_karti Tablosu
kart_id (PK) │ uye_numarasi (FK) │ kart_durumu
─────────────┼───────────────────┼────────────
K-501        │ 201               │ Aktif
K-502        │ 201               │ Aktif       <── Kısıt yoksa aynı üyeye ikinci kart açılabilir

Mekanizma: 1:1 ilişkinin korunabilmesi için, yabancı anahtar sütununa kavramsal düzeyde bir Tekillik (Benzersizlik - UNIQUE) kuralı eklenmesi zorunludur.

İlişki Türlerinin Dönüşüm Karşılaştırması

İlişki Türü Örnek Anahtar Yerleşimi Şema Gereksinimi
1:N Raf → Kitap Yabancı anahtar “çok” tarafındaki (kitap) tabloya eklenir Ek tablo gerekmez; tek bir FK sütunu yeterlidir
N:M Üye ↔︎ Kitap İki yabancı anahtarı barındıran bağımsız bağlantı tablosu (odunc) kurulur İlişki iki adet 1:N bağa ayrışır; eylem nitelikleri bu ara tabloda saklanır
1:1 Üye ↔︎ Kart Yabancı anahtar tablolardan birine (kutuphane_karti) eklenir Yabancı anahtar sütununa tekillik (benzersizlik) kuralı konulması zorunludur
[ uye ]                                                [ kitap ]
PK: uye_numarasi ──┐                      ┌─────────── PK: demirbas_numarasi
    ad_soyad       │                      │                baslik
    telefon        │                      │                yazar
                   │   [ odunc ]          │
                   └──> FK: uye_numarasi  │
                        FK: demirbas_numarasi <──┘
                            alis_tarihi
                            iade_tarihi

Referans Bütünlüğü ve Yetim Kayıt Riski

Senaryo: Bozulma ve Tutarsızlık

Kütüphane görevlisi odunc tablosuna yeni bir satır girerken uye_numarasi alanına sehven 999 yazıyor. Ancak uye tablosunda 999 numaralı hiçbir üye kayıtlı değildir.

[ uye Tablosu ]                           [ odunc Tablosu ]
uye_numarasi                              uye_numarasi | demirbas_numarasi
────────────                              ─────────────┼──────────────────
201                                       201          | K-101
202                                       999          | K-102  <── Hedefi Yok (Yetim Kayıt)
(999 numaralı üye kaydı veritabanında yoktur)

Yetim Kayıt (Orphan Record)

  • Gösterdiği hedef kaydı bulunmayan sahipsiz verilere yetim kayıt denir.
  • Kitap kütüphaneden çıkmış görünür; ancak kime verildiği belirsizdir. Bu durum veritabanında mantıksal tutarsızlık üretir ve ilişkisel güvenilirliği zedeler.

Referans Bütünlüğü (Referential Integrity) Mekanizması

  1. Ekleme ve Güncelleme Koruması: Bir yabancı anahtar sütununa değer girilirken, bu değerin hedef tablonun birincil anahtar sütununda mutlaka önceden var olması zorunludur. Var olmayan değerle kayıt eklenemez.
  2. Silme Koruması: Bir üye silinmek istendiğinde veritabanı denetler: Üyenin odunc tablosunda açık bir kaydı varsa silme işlemi engellenir. Aksi halde ödünç satırları yetim kalır.

Doğrulayalım: Şema Üzerinde Örnek Veri Adımları

Tablo Şeması ve Başlangıç Verileri

Tablo: uye | uye_numarasi (PK) | ad_soyad | telefon | | — | — | — | | 201 | Ahmet Yılmaz | 05551112233 | | 202 | Ayşe Kaya | 05552223344 |

Tablo: kitap | demirbas_numarasi (PK) | baslik | yazar | | — | — | — | | K-101 | Nutuk | Mustafa Kemal Atatürk | | K-102 | Veritabanı Sistemleri | Ramez Elmasri |

Tablo: odunc | uye_numarasi (FK) | demirbas_numarasi (FK) | alis_tarihi | iade_tarihi | | — | — | — | — | | 201 | K-101 | 2026-10-01 | 2026-10-15 | | 201 | K-102 | 2026-10-05 | 2026-10-20 | | 202 | K-101 | 2026-11-01 | NULL |

Üç Tasarım Kriterinin Doğrulanması

  1. Çoklu Kitap Alma (1:N Davranışı): 201 numaralı Ahmet Yılmaz iki kitap almıştır. Ahmet’in adı ve telefonu odunc tablosunda tekrarlanmamış; yalnızca uye_numarasi taşınmıştır.
  2. Tarihçe ve Kitap Paylaşımı (Zaman Boyutu): K-101 numaralı kitap ekimde 201’e, kasımda 202’ye verilmiştir. Kitap bilgisi tek satır kalmış, ödünç geçmişi kayıpsız birikmiştir.
  3. Yetim Kayıt Denetimi: uye_numarasi = 209 ve demirbas_numarasi = K-101 satırı eklenmek istendiğinde, sistem uye tablosunda 209’u bulamaz ve işlemi reddeder.

Sık Yapılan Hatalar ve Altında Yatan Mekanizmalar

1. Varlık ile Niteliği Bağlamdan Kopuk Değerlendirmek

  • Yanılgı: Bir kavramın hep varlık ya da hep nitelik olduğunu sanmak.
  • Doğrusu: Kararı iş kuralı verir — sadece ad saklanıyorsa nitelik, bağımsız nitelikleri varsa varlıktır.

2. Kardinalite ile Katılımı Birbirine Karıştırmak

  • Yanılgı: Üst sınır ile alt sınırı eş tutmak.
  • Doğrusu: Kardinalite üst sınırı (1/N), katılım alt sınırı (0/1) belirler; karıştırmak yanlış NOT NULL veya yanlış ilişkiye yol açar.

3. E-R Diyagramında Doğrudan Yabancı Anahtar Tanımlamak

  • Yanılgı: Kavramsal kutunun içine karşı tablonun anahtarını sütun olarak eklemek.
  • Doğrusu: Yabancı anahtar ilişkisel şemaya geçiş aracıdır; kavramsal düzeyde sadece öz nitelikler ve ilişki çizgileri olur.

4. N:M İlişkiyi Bağlantı Tablosuz Çözmeye Çalışmak

  • Yanılgı: Bir tabloya karşı tarafın anahtarını ekleyerek ilişkiyi çözebileceğini sanmak.
  • Doğrusu: Atomikliği yıkar veya geçmişi ezer; N:M mutlaka bağlantı tablosu gerektirir.

5. 1:1 İlişkide Yabancı Anahtarın Tek Başına Tekillik Sağladığını Sanmak

  • Yanılgı: FK eklenince ilişkinin kendiliğinden 1:1 kalacağını varsaymak.
  • Doğrusu: FK aynı değeri tekrar kabul edebilir; tekillik ancak UNIQUE kısıtıyla garanti edilir.