ER Diyagramı Nedir?
İngilizce: ER Diagram
Yayın: · Son güncelleme:
ER Diyagramı Nedir? Kısaca
ER diyagramı (varlık-ilişki diyagramı), bir veritabanındaki varlıkları, bu varlıkların niteliklerini ve aralarındaki ilişkileri görsel olarak gösteren şemadır. Veritabanı tasarlanırken plan olarak kullanılır.

ER diyagramı nedir?
ER diyagramı, İngilizce Entity-Relationship (varlık-ilişki) ifadesinden gelir. Bir sistemde hangi nesnelerin veri olarak tutulacağını ve bu nesnelerin birbirine nasıl bağlandığını kutular ve çizgilerle anlatır. Model, 1976'da Peter Chen tarafından tanımlanmıştır.
Kod yazmadan önce çizilir. Böylece ekipteki geliştirici, analist ve iş birimi aynı resme bakarak konuşabilir.
Temel bileşenler
Diyagramda üç temel unsur vardır. Varlık (entity), veri tutulacak nesnedir: öğrenci, ders, öğretmen. Nitelik (attribute), varlığın özelliğidir: öğrenci numarası, ad, doğum tarihi. İlişki (relationship) ise varlıklar arasındaki bağdır.
İlişkilerin kaç kayıt arasında kurulduğu da gösterilir:
| İlişki türü | Örnek |
|---|---|
| Bire bir (1:1) | Bir kişinin bir kimlik kartı |
| Bire çok (1:N) | Bir öğretmenin birçok dersi |
| Çoka çok (N:M) | Öğrenciler ve dersler |
Örnek senaryo
Varsayımsal bir okul sistemi düşünün. Bir öğretmen birden fazla ders verir, bir öğrenci birden fazla derse kayıt olur, her derste de çok sayıda öğrenci bulunur. Öğrenci ile ders arasındaki çoka çok ilişki, tabloya dökülürken "kayitlar" adlı bir ara tabloyla çözülür. Bu ara tablo öğrenci ve ders kimliklerini birlikte tutar.
Nasıl çizilir?
Önce sistemdeki isimleri (öğrenci, ders) listeleyip varlıkları çıkarın, sonra fiilleri (kayıt olur, verir) ilişki olarak bağlayın. Crow's foot (karga ayağı) gösterimi, ilişki sayılarını çizgi uçlarındaki sembollerle anlatan yaygın bir stildir.
draw.io, dbdiagram.io ve Lucidchart gibi araçlar bu iş için kullanılabilir. Diyagram tamamlandığında veritabanı şeması ve CREATE TABLE komutları doğrudan bu çizimden türetilir.
Sıkça Sorulan Sorular
ER diyagramı ile UML sınıf diyagramı aynı mı?
Benzerdirler ama amaçları farklıdır. ER diyagramı veritabanı yapısına, UML sınıf diyagramı ise yazılımdaki sınıflara ve davranışlarına odaklanır.
ER diyagramı mevcut bir veritabanından üretilebilir mi?
Evet. MySQL Workbench, DBeaver ve pgAdmin gibi araçlar mevcut veritabanını okuyarak otomatik diyagram çıkarabilir. Bu yöntem, belgesi olmayan eski sistemleri anlamak için kullanışlıdır.