You are on page 1of 24

Varlk-liki emalar

Bir varl belirlemeye yarayan, o varlkla etkileim kurmak ya da o varl kullanmak iin gerekli nemli zellikleri (yani varlklarn metadatalar)
Do. tar lk Ad kinci Ad Soyad Ad ALIAN Ya SSN Projeler
1

Varlk-liki emalar
YurtAd YurtAd

YURTTA-KALMA

renciNo

YURT
Yer OdaSays

1:N

RENC

Kiras

renciAd

renciSnf

Varlk-liki emalar
Bir personel varlnn aada belirtilen zelliklere sahip olduu varsaylsn Ad Cadde Sokak Apartman Doum Tarihi Cadde, sokak ve apartman nitelikleri adres ile birletirilecektir. Ya doum tarihinden elde edilecektir.
3

Varlk-liki emalar

Ya Cadde

Sokak

Adres

Personel

Doum Tarihi

Apartman

Varlk-liki emalar

Mteri ve Hesap isimli iki varlk kmesinin nitelikleri aadaki gibidir: Mteri: Ad, SskNo, , Adres Hesap: Hesap No, Bakiye Bu veriler ile varlk-iliki emasn oluturunuz.

Varlk-liki emalar
Hesap No Adres Bakiye

SSK NO

Mteri

1:1
MHes

Hesap

Ad

Tarih

Varlk-iliki emalarnn tablo haline dntrlmesi Ad SSk No Adres


Mteri={SskNo, ad,adres}

Hesap No Hesap={Hesap No, Bakiye}

Bakiye

Mteri Hesap ilikisi iin={SSkNo, Hesap No, Tarih}


SSk No

Hesap No

Tarih

Varlk-liki emalar

Varlk-liki emalar
Bir mteri birden fazla otomobile sahip olabilir ve her otomobil modeline birden fazla mteri sahip olabilir. Bu durumda otomobiller ve mteriler arasndaki iliki oktan-oa biimindedir. Bu ilikinin varlk-iliki emasn iziniz.

Varlk-liki emalar

Ad Mteri No Sahip Mteri

Oto plaka

Bakiye Renk

M:N

Otomobil

Sahip Mteri ve otomobil varlklar ve sahip ilikisi iin varlk-iliki emas


10

Varlk-liki emalar
Mteri={mteri no, ad} Otomobil={oto model, renk} Sahip={mteri no, oto plaka, tarih} Sahip isimli ilikiye dayanarak aadaki tablo oluturulabilir.
Mteri no oto plaka 345 346 347 348 34 GF 67 45 HN 34 36 BN 67 34 AV 45 Tarih 12.12.2005 15.11.2002 12.12.2005 15.11.2002

11

Varlk-liki emalar
Tak.No Takm Ad

TAKIM
1 Oynar N

SM

OYUNCU
Performans Puan

Ya

12

likisel Model
likisel model, gnmzde en yaygn biimde kullanlan bir modeldir. likisel model varlklar arasndaki balantnn ierdii deerlere gre sralanmas esasna dayanr. Bu yaklamda veri tabanndaki tm ilikiler tablolar biiminde tanmlanmaktadr.

13

likisel Veri Taban


likisel veri taban, her biri zel isimlere sahip tablolardan oluur. Burada her bir tablo bir varla veya bir ilikiye karlk gelmektedir. Tablonun stunlar nitelikleri, satrlar ise bu niteliklerin deerlerini ifade eder. Her bir satr bir kayt olarak da dnlebilir. Anahtar alan tablonun tanmlaycsdr.
14

Tablonun zellikleri
Tablolar stunlardan oluur. Her bir stunun ayr bir ad vardr. Her bir stun ayn niteliin tanmlad ayn etki alannn belirledii deerleri ierir. Satrlarn ve stunlarn sras nemsizdir. Her bir satr birbirinden farkldr.

15

Soyutsal Katmanlar (Levels of Abstraction


Fiziksel Katman (Physical level): Bir kaydn nasl saklanacan tanmlar(rnein,mteri). Mantksal Katman (Logical level): Bir verinin nasl veritabannda saklanacan ve veriler arasndaki ilikileri tanmlar. tip (type) musteri = kayt (record) musteri_id : string; musteri_adi : string; musteri_sokak : string; musteri_il : integer;
biti (end)

Grnt Katman (View level): Tasarm kullancdan saklar( rnein veri tipi veya hangi bilgilerin grntlenecei)
16

Nesneler ve emalar
Programlama dillerindeki tip ve deikenlere benzerler ema (Schema) Veritabannn mantksal yaps
rnek: Veritaban,Mteri ve hesap bilgileri ile bunlar arasndaki ilikiyi barndran bir kmedir. Fiziksel ema (Physical schema): Fiziksel dzeyde veritaban tasarm(Dosyann sabit dikteki yeri, bykl..) Mantksal ema (Logical schema): Mantksal dzeyde veritaban tasarm (veri alanlar, ilikiler)

Nesneler (Instance) Zamandaki herhangi bir noktadaki veritaban iersindeki ierik.


Bir deikenin deerine benzemektedir.

Fiziksel Veri Bamszl (Physical Data Independence) Mantksal emay deitirmeden fiziksel emay deitirme kabiliyeti
Uygulamalar mantksal emaya baldr. Genelde , deiik katmanlar ve bileenler arasndaki arabirimler yle tanmlanmaldrki baz blmlerin deitirilmesi dierlerini fazla etkilememeli.

17

VERTABANI RNE
Uygulama Program 1

ALT EMA A
Uygulama Program 2

FZKSEL FZKSEL EMA EMA

MANTIKSAL EMA

Uygulama Program 3

ALT EMA B

VERTABANI EMALARI VER FZKSEL VERTABANI VER

Uygulama Program 4

KULLANICILAR

18

VER MODELLER
Asadakilerini tanmlayan ara topluluu
Veri (Data) Veri likileri (Data relationships) Veri Kstlamalar (Data constraints)

likisel Model (Relational model) Varlk-iliki veri modeli (Entity-Relationship data model) (Counlukla veri taban dizayn iin)
19

likisel Veritaban
likisel veritaban ilikisel model bazldr. Veri etrafndaki bilgi ve ilikiler tablolar tarafndan gsterilir
znitelikler (Attributes)

20

liki Gsterimi
likinin o anki deerleri (relation instance) bir tablo tarafndan gsterilir. r deki bir t eleman bir deerdir ve tablodaki bir satr (row) ile gsterilir. Deerlerin sras nemli deildir. (Deerler keyfi srada olabilir)
znitellikler (veya stunlar) attributes customer_city (or columns) Harrison Rye Rye Pittsfield Deerler (yada satrlar) tuples (or rows)

customer_name customer_street Jones Smith Curry Lindsay Main North North Park customer

21

Veritaban
Bir veritaban birden fazla ilikiye sahiptir. Bir irketin bilgisi birden fazla paraya blnmtr, her para bilginin baz blgelerini ilikilendirir account : hesaplar hakkndaki bilgiyi tutar. depositor : hangi mterinin hangi hesab tuttuunu gsteren bilgiyi saklar customer : mteri hakkndaki bilgileri tutar Btn bilgilerin tek bir ilikide saklanmas rnein bank(account_number, balance, customer_name, ..) aadaki sonulara yol aabilir
Bilginin tekrarlanmas (repetition of information)
rnein iki mteri tek hesaba sahip (ne tekrarlar?)

Bo deerlerin ihtiya
rnein hesab olmayan mterinin gsterimi

Normalizasyon teorisi (Normalization theory) ilikisel veri tabannn tasarmndan bahsetmektedir 22

TEMEL KAVRAMLAR
Alan(Field) : Veritaban tablolar ierisinde saklanacak verinin ieriine gre, fiziksel tipi belirlenen (Say,String vb.) ve isimlendirilen blmlere denir.(rnek : Bir field ierisinde bir i yerindeki personele ait "isim" bilgisi saklanacak ise, programn kontrol asndan alan(field) ismininde ierik ile ilgili seilmesi tercih edilir yani "PersonelIsim" veya benzer bir alan(field) ismi seilmelidir. Tablo(Table) : eriklerine gre ayrtrlm alan(field) topluluklarna tablo denir, tablolar veri tabanlarn oluturan bilgi depolardr. rnek= Bir iyeri veritabann ele alalm, i yerinin bnyesinde barndrd departman adedince veri tabann ierisinde tablo olutururuz tablo isimlerinide departmalar ile ilikili olarak isimlendiririz (Personel Mdrl departman iin "personel" tablo ismi , Muhasebe departman iin "muhasebe" vb.) daha sonra bu tablolarn ierisine alanlar olutururuz.(Personel tablosu ierisine PersonelIsim","PersonelYas" vb. isimleri tayan alanlar amamz mmkndr.)
23

BRNCL VE YABANCI ANAHTAR


Birincil Anahtar(Primary Key) : zerinde ilem yaplan tabloya ait kaytlar benzersiz olarak tanmlayan alanlardr. rnein bir okulu ele alalm burda rencileri benzersiz biimde tanmlayabilen en nemli ge phesiz ki grenci numarasdr.Bir okulda,isim,soyisim gibi kimilik bilgilerl ayn olabilecek bir ok renci mevcut olabilir fakat,hi bir rencinin, o renciyi tanmlayan, renci numaras ayn olamaz benzer bir mantk ile telefon numaralar da dnlebilir. Yabanc Anahtarlar(Foreign Keys) : Tablo ierisindeki verilerin birbirleri ile iletiim kurabilmeleri amac ile kullanlan benzersiz olmas gerekmeyen alanlardr. rnein ierisinde "Ogrenci_No" birincil anahtarn barndran "Ogrenciler" isimli tablonun var olduunu varsayalm ayrca "Notlar" isimli bir tablonun ierisinde, ayn "Ogrenci_No" alann esitli defalar yabanc anahtar olarak kullanmamz gerekebilir (nk, genellikle bir rencinin birden fazla dersi ve dolaysyla "Notlar" isimli tabloya ilenmesi gereken birden fazla snav notu olacaktr.) Bamsz tablolarda bu ekilde organize edilmi veriye "ilikisel(Relational)" bu veriyi ieren veritabanna ise "ilikisel veritaban" ismi verilir.Veritabanlarndaki verinin okunmas ve ynetilmesi iin kullanlan ortak sorgulama diline Yapsal Sorgulama Dili (Structured Query Language (SQL) ) denir.
24

BRNCL VE YABANCI ANAHTAR


BLM
B_no 1 2 3 isim muhasebe insan kaynaklar IT

BRNCL ANAHTAR

ALIANLAR
Calsan_no 1 2 3 4 5 6 B_no 2 3 2 1 3 3 isim Nora Edwards Ajay Patel Ben Smith Brian Burnett John O'Leary Julia Lenin

YABANCI ANAHTAR

25

Fonksiyonel Bamllk
Rnin ilikiyi(relation) ; A ve Bnin bir attribute yada attribute setini temsil ettiini dnelim. Eer R ilikisinde her bir A deeri , tam olarak bir B deerine iaret ediyorsa ; B, A ya fonksiyonel olarak bamldr diyebiliriz A -> B (A fonksiyonel olarak Byi tanmlar.)
26

Fonksiyonel Bamllk
ID SM EHR 123 Ahmet Ankara 324 Derya Ankara 574 Derya stanbul Kiiler tablosu ile ilgili neler syleyebiliriz? Eer ID numarasn biliyorsam, ismini de biliyorum ID numaras ismi belirmektedir. SM nitelii, IDye fonksiyonel bamldr.
27

Fonksiyonel Bamllk
A -> B A fonksiyonel olarak Byi tanmlar.)

Yukardaki ogrenci tablosunu ele aldmz zaman aadaki bamllklardan sz edebiliriz. ogr_no -> ogr_name ogr_no - > ogr_name , bolum , sinif , kimlik_no kimlik_no - > ogr_no , ogr_name , bolum , sinif
28

Normalletirme
likisel veritaban oluturmak iin normalletirmeyi bilmek ok nemlidir. Normalletirme veri kayplarn engellemek, verinin tekrarn azaltmak, silme, gncelleme eklemede kan zorluklar en aza indirmek icin yaplan operasyonlar toplamidir Amac veritabanna etkinlik kazandrmaktr. Herhangi bir tablonun tekrarl veriler ierdii duruma birinci normal form denir. Birinci normal formdaki bir tabloda tekrarlayan stunlar bulunmamaldr.
29

Birinci Normal Form


Dikkat edilecek olursa belirli alanlarda tekrarlar yer almaktadr.

30

Birinci Normal Form


Satr Ekleme Sorunu: Byle bir tabloda ancak yeni bir rn satn aldnda yeni bir mteri eklenir eer al veri yoksa mantksal olarak mteri eklemek bo kayt eklemekle ayn anlama gelir. Gncelletirme Sorunu: Eer Mterilerden birinin oturma adresi deiirse bu tablodaki bu mteri ile ilgili tm kaytlargncellenmelidir rneimizde 5 kayt olmasna ramen byk bir veri tabannda byle kk bir deiiklik iin bile binlerce kayd gncellemek gerekir.
31

kinci Normal Form


Birinci normal formda tekrarlarn ne tr sorunlara neden olduunu rendik imdide bu sorunlar zmek iin birinci normal formdaki tabloyu baka normal tablolara blmeliyiz. Fonksiyonel bamllk gz nnde bulundurularak tablolar blnmelidir. Blnen tablolardan birinin birincil anahtar ile blnen dier tablodaki birincil olamayan bir alan arasnda bamlk varsa buna tam bamllkta denir;bu duruma ikinci normal form denilir.
32

kinci Normal Form

ikinci normal formda da satir ekleme ve silme sorunlar ortaya kyor. Satr ekleme sorunu: Mteri tablosuna bir il eklemek istediinizde mantken bir mteri eklemek gerekir. Satr Silme Sorunu: Mteri silindiinde (rn: Gkmen Imamoglu) mterinin oturduu ehir ve ehirle ilgili plaka verisi de silinebilir

Bu sorunlar Dzeltmek iin nc Normal form uygulanr. nc Normal Form, kinci Normal Form yapsndaki Tablolarn Fonksiyonel bamllk iermese de alt tablolara blnmesinden elde edilir.

33

nc Normal Form
nc normal formda tablonun, Primary Key ile direk ilikisi bulunmayan, ancak dier alanlara bal alanlar bulunur. rnein mteri tablosunda ehir ismi ve plaka alan kii ile dorudan balants yoktur. Bu alanlarn ayr bir tabloya alnmas nc derece normalizasyondur.

34

nc Normal Form

35

Drdnc Normal Form


Tablolarda, Bos Geilen Stunlardan Kanlmaldr. Verilerin ynetimi ve tutarll asndan NULL geilebilir alan saysn az tutmaya almak faydal olacaktr

36

Beinci Normal Form


Tablolar, Tekrarlayan satrlar veya Tekrarlayan Stunlar ermemelidir.

37

RNEK (1NF)
alanlar (1NF)
isci_no 1 1 1 2 2 3 3 3 isim Kevin Jac obs Kevin Jac obs Kevin Jac obs Barbara Jones Barbara Jones Jake Rivera Jake Rivera Jake Rivera Blm_no 201 201 201 224 224 201 201 201 Blm_ad R&D R&D R&D IT IT R&D R&D R&D Bildii Programla C Perl Java Linux Mac DB2 Orac le Java

38

2NF
alanlar
isci_no 1 1 1 2 2 3 3 3 isim Kevin Jacobs Kevin Jacobs Kevin Jacobs Barbara Jones Barbara Jones Jake Rivera Jake Rivera Jake Rivera

(1NF)
Blm_ad R&D R&D R&D IT IT R&D R&D R&D Bildii Programla C Perl Java Linux Mac DB2 Orac le Java

Blm_no 201 201 201 224 224 201 201 201

alanlar (2NF)
isci_no 1 2 3 isim Kevin Jac obs Barbara Jones Jake Rivera Blm_ Blm_ad 201 R&D 224 IT 201 R&D

Beceriler (2NF)
isci_no 1 1 1 2 2 3 3 3 Bildii Progra C Perl Java Linux Mac DB2 Orac le Java

39

3NF
alanlar(2NF)
isci_no 1 2 3 isim Kevin Jac obs Barbara Jones Jake Rivera Blm_ Blm_ad 201 R&D 224 IT 201 R&D

alanlar(3NF)
isci_no isim Blm_n

Blm (3NF)
Blm_ Blm_ad 201 R&D 224 IT

1 2 3

Kevin Jac obs 201 Barbara Jones 224 Jake Rivera 201

40

rnek
Normalize edilmemi tablo
renciNo Danman Dan.Odas Ort1 Ort2 Ort3 67 70 ------------------------------------------------------1022 Ahmet 412 60 70 4123 Derya 216 56 80

Ortalama alannda olduu gibi tekrarlayan alanlar olmamaldr.

1NF
renci No 1022 1022 1022 4123 4123 Danman Danman Odas Ort Ahmet 412 60 Ahmet 412 70 Ahmet 412 67 Derya 216 56 Derya 216 80
41

2NF
Tekrarlayan veriler tabloda yer almamaldr.
renciNo Danman Danman Odas 1022 Ahmet 412 4123 Derya 216

renciNo Ort 1022 60 1022 70 1022 67 4123 56 4123 80 4123 70

42

3NF
Bir anahtara bal olmayan veri tablodan kartlmaldr. Danman odas alan, Danman alanna fonksiyonel bamldr. stenirse bu alan renci tablosundan kartlabilir

43

44

1NF

M.No

lemNo

M.Ad

Adres

KiraBal.

KiraBiti

Kira

SahipNo

SahipAd

45

2NF
M.No M.Ad M.No lemNo KiraBal. KiraBiti

lem No

Adres

Kira

SahipNo

SahipAd

46

3NF

lem No

Adres

Kira

SahipNo

SahipNo

SahipAd

47

3NF(TM TABLOLAR)
M.No M.Ad M.No lemNo KiraBal. KiraBiti

lem No

Adres

Kira

SahipNo

SahipNo

SahipAd

48

You might also like