Veri Tabanı Giris_not1

Embed Size (px)

Citation preview

  • 8/7/2019 Veri Taban Giris_not1

    1/13

    02.03.2011

    1

    1

    VER TABANI YNETM(2010-2011 Bahar)

    2

    1. Temel Veri Taban Kavramlar

    Veri nedirVeri taban nedirVeri taban modelleriVeri taban eitleriVeri taban Ynetim SistemiVeri taban tasarm ve normalletirme

    2. SQL veri ileme dili3. Veri taban Uygulamalar (Delphi ile)

    Konular

    3

    VER NEDR?

    Dank bilgi kmesidir. Olgularn, kavramlarn, veya talimatlarn, insantarafndan veya otomatik yolla iletiim, yorumlama veileme amacna uygun bir biimde ifadesidir. Genellikle, biz veri veya veri birimleri zerindekiilemlerimizi varlk hakknda her hangi bilgi almak iingerekletiririz.

    Kaydedilebilir bilinen gereklerdir. Veri, anlaml bir ekilde dzenlendii zaman yararl bilgi

    olur. Veri; saylar, rakamlar, szckler, metinler, resimler,

    olaylar vb. biimde temsil edilen gereklerdir. rnein birkiinin ismi, adresi, telefon numaras, fotoraf gibi

    4

    VERTABANI NEDR?

    Herhangi bir konuda birbirleri ile ilikili verilerin sistematikolarak oluturduu yaplardr.

    En genel tanmyla ise, kullanm amacna uygun olarakdzenlenmi verilerin btndr.

    Ya da, daha detayl bir tanmla; veriyi ynetmek ve sunmakiin kullanlan tablolar, formlar, veri eriim sayfalar, sorgularve raporlardan oluan nesneler topluluudur.

    retim retim Verileriniversite renci, ders VerileriHastane Hastalk, hasta kayt

    verileriBanka Hesap Verileri

    5

    ok sayda bilginin, gvenilir bir ekilde saklanmas vezerlerinde eitli ilemlerin yaplmas gerektiinde, bu bilgilerioluturan verilerin anlaml biimde dzenlenmelerigerekmektedir. yi dzenlenmi bir veri taban ile birok ilevyerine getirilebilir.

    Belirli bir konu hakknda toplanm veriler bir veritabanprogram altnda toplanr. stenildiinde toplanan bilgilerintm veya istenilen zelliklere uyanlar grntlenebilir,yazdrlabilir hatta bilgilerden yeni bilgiler retilerek bunlareitli amalarla kullanlabilir.

    Veri taban, bir kuruluun uygulama programlarnn

    kulland operasyonel verilerin btndr. Burada;kurulu, bir okul, niversite, banka, bir retim irketi,hastane, devlet kuruluu, vb. olabilir. Operasyonel veribir kuruluun alabilmesi, ileyebilmesi iin kullanlan okeitli verilerdir. Ticari bir irket iin mteri bilgileri, satbilgileri, rn bilgileri, deme bilgileri, vb., okul iin rencibilgileri, alan dersler, kimlerin kaydolduu, retmenbilgileri, bo ve dolu derslikler, snav tarihleri, vb., hastaneiin hasta bilgileri, doktor bilgileri, yataklarn dolulukboluu, tehis-tedavi bilgileri, mali bilgileri, vb

    6

  • 8/7/2019 Veri Taban Giris_not1

    2/13

    02.03.2011

    2

    7

    Veri Tabanlarnn Ksa Tarihesi

    1960lar:

    1960larn evveli: Charles Bachmann Honeywellde ilkVTYSi (IDS -Integrated Data Store) gelitirdi A modelinde veri balantlar grafla ifade edilirdi.

    1960larn sonlar: lk baarl ticari VTYS (IMS-information management system) IBMde gelitirildiHiyerari modelde veri balantlar aa biiminde

    ifade edilirdi Bu gn de kullanlmaktadr (SABRE reservations;

    Travelocity) 1960larn sonlar: Conference On DAta Systems

    Languages (CODASYL) modeli tanmland. Bu a modeliidi, fakat daha ok standartlamt

    8

    1970ler:

    1970: Ted Codd IBM San Jose Laboratory(imdi IBM Almaden) laboratuarndailikisel veri modelini tanmlad.

    ki nemli proje balatld (1970lerinsonlarnda her ikisi gereklemiti) INGRES (University of California, Berkeley) System R ( IBM San Jose Laboratory)

    1976: Peter Chen Varlk likisel (ER)modeli tanmlad

    Veri Tabanlarnn Ksa Tarihesi

    9

    1980ler

    likisel Veri tabanlar teknolojisinin gelimesi ISO tarafndan SQLin standartlatrlmas (1980lerin ortalar-sonu) Ykseli devri

    1990lar

    likisel teknolojinin yaygnlamas ve baarmn ykselii Paylalan sistemlerin oluumu Yeni veri modelleri: nesneye ynelik, tmdengelimli (deduktive) 1990larn sonu: nesneye ynelik teknolojinin ilikisel VTYSle

    birletirilmesi Nesne-ilikisel VTYS Yeni uygulama alanlar: Veri ambarlar ve OLAP, Web Internet, oklu

    ortam ve metinlerin ilenilmesi

    Veri Tabanlarnn Ksa Tarihesi

    10

    RNEK : Bir kiisel telefon rehberi bir veritaban olarakgrlebilir.

    Bu telefon rehberi, rastgele dzenlenmi isimleri ve telefon

    numaralarn gsterir bir listedir. Bununla beraber, bu listeistenilen tercihe veya forma gre belirli bir srada organizeedilebilir. rnein, liste ada veya soyada gre alfabetik srada,telefon numarasna gre artan bir ekilde sralanabilir, ehirkodlar kendi iinde gruplanabilir.Kark bir telefon rehberinin, hibir yarar olmayacandan bizimiin nemli olan, bilgilerin istediimiz dzende olmasdr.

    Ad S oya d ehir Ko du Te le fon N o

    Mehmet Trkme n 322 2384153

    Uur Yksel 216 2761651

    Erhan Seilen 212 4327862

    brahim Salam 318 6115240

    R ama za n Te kina rs la n 3 22 7 14 56 78

    Veli Korkmaz 322 4567890

    Ayhan Akgz 212 1234567

    11

    Gnmzde, deiik konulara ilikin bir ok veritabanoluturulmutur. Hastane ynetim sistemine ilikin veritaban rnek olarak verilebilir. Bu veritabannda;

    Hasta kaytlarPersonel kaytlarMalzeme kaytlarMuhasebe kaytlarBilimsel almalarBro ilemleri

    gibi veriler tutulmaktadr. Bu veriler arasnda eitliilikiler kurularak, bir verinin tekrar veritabanna girmesinlenmi, ayrca veritaban zerinde gncelletirmeilemleri yaplarak veritabannn aktif bir ekildekullanlmas salanmtr.

    12

    Neden Veritaban Kullanlr?Bilgisayar ortamnda veri saklama ve eriiminde gemitengnmze deiik yntemler ve yaklamlar kullanlmtr.Bunlardan geleneksel yaklam (Dosya -lem Sistemi) verileriayr ayr dosyalarda gruplamaya dayanr. Verileri saklamak iinprogramlama dillerinde kullanlan sral (Sequential) ve rastgele(Random) dosyalama sistemleri gibi. Birbiriyle ilgili olan ve ayngruba dahil olan veriler bir dosyada, bir baka gruba dahil olanveriler de baka bir dosyada tutulurdu. Geleneksel yaklamnbirok sakncas vardr ve bu sakncalarn beraberinde getirdiisorunlarn stesinden gelebilmek iin de veri taban yaklamzamanla geleneksel yaklamn yerini almtr. Gnmzdeveriler artk veri taban yaklam ilkesine gre VTYS lerdetutulmakta ve ilenmektedir.

  • 8/7/2019 Veri Taban Giris_not1

    3/13

    02.03.2011

    3

    13

    Veriler hzl ve kolay girilebilmeli

    Gvenli bir ekilde saklanmalstenildii ekilde ve kolay sorgulanmal

    Veri tekrarlar ortadan kaldrlr ya da en aza indirilir.Bellek alan israf nlenir.Standart bir sorgu dili kullanmak mmkndr.Veri btnlnn bozulmas nlenir.Verilerin merkezi kontrol salanr.Tutarsz (hatal) bilgiler nlenir.Verinin paylam salanr.Btnlk salanr.Genel veya zel raporlar alnabilir.

    yi bir veritabannn zellikleri:

    Veritabannn faydalar:

    14

    Yeni dosya eklemekYeni veri eklemek

    Veri deitirmekVeri silmekDosya silmek

    Veritaban zerinde yaplan ilemler:

    Her dzeyde rapor alnabilme zelliiDoru ve hzl sonu verebilme zelliiBilgilerin ve sonularn tutarll

    Veritabanndan beklenenler

    Kurulum ve bakm klasik dosya sisteminden pahaldr.Sistem iinde baz bileenler iyi tasarlanmazsa sistem birbtn olarak baarszla urayabilir.

    Veritabannn riskleri

    15

    PROGRAM 1

    PROGRAM 1

    PROGRAM 2

    Veri Taban

    VTYS

    Sorgu lemcisi

    Yneticisi

    Veri Taban Yaklam

    16

    1. Dosya Sistemleri2. Hiyerarik3. A (ebeke)4. likisel veritaban modeli5. Nesne Veri-Taban Modeli6. Nesne-likisel Veri-taban Modeli

    Veri Modeline Gre Veritaban eitleri

    1. Dosya SistemleriBu tr programlarda tm veritaban tek bir tabloyasdrlmaldr.Bu, birka kaytta ortak olan herhangi bir bilginin herkaytta tekrarlanaca anlamna gelir. Veriler text dosyasolarak kaydedilir.

    17

    2. Hiyerarik Veri Taban: Bu modelde veriler aayapsna benzer bir biimde modellenir. En ste kk vekkn dallar bulunur. Ayrca her daln alt dal sayesindedallanma ve eitlilik artar. Bu modelde her bir alt dalnsadece bir tane noktadan balanma art bu modelin enbyk kstlamalarndan biridir. Hiyerarik veri modeli1960 ve 1970 yllar arasnda popler olan bir modeldi.

    Kitaplar(no, balk)

    Yaync lar KonularYazarlar

    (ad, soyad)

    18

    3.A Veri Tabanlar : Hiyerarik veri tabanlarnn

    yetersiz kalmasndan dolay bilim adamlarnn ortakalmas sonucu ortaya konulmu bir veri taban trdr.A veri tabanlar verileri aalarn daha da gelimi haliolan graflar (aacn kendiside zel bir graftr.) eklindesaklarlar. Bu yap en kark yaplardan biridir.

    Konular Kitaplar

    Yazarlar

    Yaynclar

  • 8/7/2019 Veri Taban Giris_not1

    4/13

    02.03.2011

    4

    19

    4. likisel Veritaban (Relational Data Model)Bu sistemde veriler tablo eklinde saklanr. Bu veritabannda, veri al verii iin zel ilemler kullanlr. Builemlerde tablolar operandlar olarak kullanlr. Tablolar

    arasnda ilikiler belirtilir. Bir iliki, bir tabloya, baka birbaka bir tablodaki kayd balanmamz salar.Bu ekilde veriler daha az yer kaplar ve gncellemekolaylar.Bu ilikiler matematiksel bantlarla (ilikilerle) temsil edilir.Gnmzde hemen hemen tm veri taban ynetimsistemleri ilikisel ver i modelini kullanrlar. likisel modeli1970 ylnda Codd nermitir. Bu model, matematikteki ilikiteorisine (the relational theory) dayanr. likisel verimodelinde veriler basit tablolar halinde tutulur. Tablolar,satr ve stunlardan oluur.

    20

    likisel veritaban modeli

    21 22

    5. Nesne Veri-Taban Modeli : Dierlerinden daha sonraortaya atlan ve karmak uygulamarda baarsn kantlamnesne ynelimli programlamaya dayanan veri modelidir. Bumodelin ngrs giderek zlmesi daha zor hale gelenprogramlama problemlerini zen nesne ynelimli modelinveri modelleme de etkili olacadr. Nesne veritaban modeli,verilerin herhangi bir noktadan ok kolayca alnabilecei, boyutlu bir yapdan oluur. likisel veri taban verileri ikiboyutlu tablolar halinde getirirken, nesne modelinde verilertek para olarak gelirler. Dolays ile birden fazla veridnmesi arzulandnda nesne modeli performans olarak

    ok iyi deildir. Daha ok nesne ynelik program gelitirmeortamlarnda kullanlr.

    23

    6. Nesne-likisel Veri-taban Modeli : Veriler nesne

    olarak modellenir ve yaratlr. Nesneye-Ynelik Programlama(OOP) da olan snf ve miras kavramlarna sahiptir.Karmak veriler zerinde ilem yaparken yksek performanssunan bir yaklamdr.

    Nesne-likisel Veritaban modeli kresel bir yapya sahiptir.Veri taban zerindeki herhangi bir veriye, yksekperformansta eriim salar. Fakat yine de birden fazla veriistenildii zaman bu modelde de veri taban performans okkt bir darbe alr.

    Bu veri taban modeli ilikisel ve nesne veri taban modellerinibir ekilde ayn at altna almak iin 1990 l yllardaoluturuldu.

    24

    VERTABANI YNETM SSTEM (VTYS) NEDR?(DATABASE MANAGEMENT SYSTEM-DBMS)

    Veri taban ynetim sistemi(VTYS), yeni bir veritabanoluturmak, veri tabann dzenlemek, gelitirmek ve bakmnyapmak gibi eitli karmak ilemlerin gerekletirildii birdenfazla programdan olumu bir yazlm sistemidir. Veri tabanynetim sistemi, kullanc ile veri taban arasnda bir arabirimoluturmaktadr ve veri tabanna her trl eriimi salar. Veritabannn tanmlanmas: veri tabann oluturan verilerin tip veuzunluklarnn belirlenmesidir. Veri tabann oluturulmas ise veriiin yer belirlemesi ve saklama ortamna verilerin yklenmesiniifade eder.

  • 8/7/2019 Veri Taban Giris_not1

    5/13

    02.03.2011

    5

    25

    VERTABANI YNETM SSTEM (VTYS) NEDR?(DATABASE MANAGEMENT SYSTEM-DBMS)Veri taban zerinde ilem yapmak; belirli bir veri zerindesorgulama yapmak, meydana gelen deiiklikleri yanstmak iinveri tabannn gncellenmesi ve rapor retilmesi gibi ileritemsil eder. Ayrca veri taban ynetim sistemi, verinin geriarlmasn salar. Veri tabanna yeni kayt eklemek, eskileriarmak ve gerekli dzeltmeleri yapmak yoluyla, verininbakmn ve srekliliini gerekletirir, kaytlara yeni veri eklemekve yeni kaytlar oluturmakla, veri tabann geniletir.

    26

    Veri Taban Ynetim SistemlerininSalad Yararlar

    - Ayn veri deiik kiilerin PClerinde veya deiikbilgisayarlarda tekrar tekrar tutulmaz; Veri Tekrar

    (Data Redundancy) azaltlr ya da yok edilir.

    - Veri Tutarll (Data Consistency): Ayn verinindeiik yerlerde birka kopyasnn bulunmas bakmzorluu getirir: bir yerde gncellenen bir adres bilgisibaka yerde gncellenmeden kalabilir ve bu durum veritutarszlna (Data Inconsistency) yol aar.

    - Veri Paylam / Ezamanllk (Concurrency):Veri taban ynetim sistemi (VTYS) kullanlmaddurumlarda veriye sral eriim yaplr. Yan birden okkullanc ayn anda ayn veriye eriemez. Bir VTYSde iseayn veritabanlarna saniyede yzlerce, binlerce eriimyaplabilir.

    27

    Veri Taban Ynetim SistemlerininSalad Yararlar

    - Veri Btnl (Data Integrity): Bir tablodan birrenci kayd silinirse, renci var olduu dier tmtablolardan silinmelidir.

    - Veri Gvenlii (Data Security): Verinin isteyerekya da yanl kullanm sonucu bozulmasn nlemek iinok sk mekanizmalar mevcuttur. Veri tabanna girmekiin kullanc ad ve ifreyle korumann yan sra kiilersadece kendilerini ilgilendiren tablolar ya da tablo iindebelirli kolonlar grebilirler.

    - Veri Bamszl (Data Independence):Programc, kulland verilerin yaps ve organizasyonu ileilgilenmek durumunda deildir. VER BAIMSIZLI-I,VTYSlerinin en temel amalarndandr.

    28

    VERTABANI YNETCS

    VERTABANI ZERNDE HER TRL YETKYESAHP OLAN KDR.

    VERTABANININ TASARIMI, ZERNDE YAPILACAKDEKLER, KULLANICILARA GEREKLZNLERN VERLMES GB LER YAPMAKLAYKMLDR.

    29

    Veri Taban lemi

    Veri Girii ve

    Raporlar

    Veri Girii ve

    Raporlar

    VTYS

    Veri Taban

    sat

    Szleme

    Sat uyg. programlar

    Mlk, Ev sahibi,

    Kirac,Szlemeayrntlar+Ktk tanmlar

    Szleme uyg. programlar

    30

    Veritaban eitleri

    1. Microsoft Access2. MySQL3. IBM DB24. Interbase5. Informix6. Progress7. Microsoft SQL Server8. PostgreSQL9. Oracle

  • 8/7/2019 Veri Taban Giris_not1

    6/13

    02.03.2011

    6

    31

    MS Access

    Microsoft Office rndr.

    Kk lekli uygulamalar iindir.Tablo bana 2 GB a kadar veri depolayabilir.Ayn anda 255 balantya izin verebilir.MS Windows dndaki sistemlerde kullanlamaz.SQL standart alma aralar kullanlmaktadr.Transaction logging zelliine sahiptir, ancak trigger

    ve stored procedure zelliklerine sahip deildir.

    32

    MySQLWindows, Linux, OS/2,Solaris, AIX vb.trigger ve stored procedure zelliklerine sahiptir, ancak Transaction

    logging zellii bulunmamaktadr.ok hzl, gvenilir ve kullanm kolay. zellikle internet ortamnda nem

    kazanan, ok esnek ve gl bir kullanc eriimkstlama/yetkilendirme sistemine sahip.

    Tablo bana 4 TB veri depolayabilir.

    Access ve MySQL e gre daha performansl, ancak kkiletmelere gre daha yksek maliyete sahiptir.

    Unix ve Windows zerinde alabilir.Transaction logging, trigger ve stored procedure

    zelliklerine sahiptir.

    IBM DB2

    33

    Informixcretli ve gl bir veritabandr.Orta lekli iletmelerin ykn kaldrabilecek kapasitededir.1994deki Postgres kodundan gelitirilmeye balanmtr.

    Dezavantajlar:

    Sadece Windows zerinde alabilir.

    Yksek maliyetKullanm kolayl, gvenilirlii,ilem gcTablo bana 4 TB veri.Transaction logging, trigger ve stored procedure

    zelliklerine sahiptir.

    Microsoft SQL

    34

    PostgreSQLLinux, Unix, BSD, Windows, AIX vb.

    cretsiz, akademik bir veritaban

    ok gl ilem yaps

    Veri gvenlii n planda

    Tablo bana 64 TB veri tutabilme zellii

    Transaction, Inheritance trigger ve stored procedurezelliklerine sahiptir.

    Dnyann en gl ve gvenilir veritaban olarakgsterilmektedir.ok yksek maliyetWindows, Unix, Linux, ...Oracle, snrsz sayda tablolar desteklemektedir.

    Oracle

    35

    Hangi veritabann semeli?

    Kk younlukta trafik: AccessWeb uygulamalar iin: MySQLDaha byk ve orta lekli uygulamalar iinse, Progress, MS

    SQL ya da Linux zerinde PostgreSQL .Oracle ise ok yksek gvenilirlik ve ilem gc

    gerektirdiinde tercih edilen bir veritaban sunucusudur.

    36

    MS Access Program

  • 8/7/2019 Veri Taban Giris_not1

    7/13

    02.03.2011

    7

    37

    MS Access Veri Taban Nesneleri

    Tablolar

    SorgularFormlar

    Raporlar

    Sayfalar

    Makrolar

    Modller

    38

    Tablolar ve likilerTablolar en temel veri taban nesneleridir. Amalar bilgidepolamaktr. Bir veritabannda bir veya daha fazla tablo olabilir.rnein obs isimli veritabannda blmler, dersler, faklteler,renciler ve notlar isimli tablolar bulunabilir. Verilerinizi saklamakzere, izlediiniz her bilgi tr iin bir tablo oluturmalsnz. Birdenok tablodan gelen verileri bir Sorgu, Form, Rapor veya Veri EriimSayfasnda bir araya getirmek iin, tablolar arasnda ilikilertanmlanmaldr.

    39

    TABLO

    Her stun bir bilgi kategorisi olan bir alan temsil eder.Her satr ise bir renci iin bilgi saklayankayttan oluur.

    NO AD SOYAD TEL FAX

    125 AL ORTAK 32332 43433

    349 VEL BOZUK 54324 53135

    Alan

    Kayt

    40

    41

    MS Access Veri Taban Nesneleri

    Btn bu nesne trleri iinde sadece Tablolar veri depolar. Gerikalan dier 6 Veri Taban Nesneleri ise tablolardaki verileriynetme, deitirme, zmleme, yeniden elde etme,grntleme yada yaynlama amac ile, bir baka ifadeyleverileri kolay eriilebilir, dolaysyla daha yararl klmak iinkullanlr.

    42

    Tablolarn yaplandrlmas

    Ayn konu ile ilgili olan bilgiler belirlenmelidir.

    Ayn konu ile ilgili alanlarn kendi tablolarnda ayn tabloda toplanmassalanmal

    Veri tekrar olmamal

    Gereksiz alanlar kullanlmamal

    Alanlar basite indirgenmelidir.

  • 8/7/2019 Veri Taban Giris_not1

    8/13

    02.03.2011

    8

    43

    Tablonun alan isimleri belirkendikten sonra, herbir alannierdii veri trnn de belirtilmesi gerekir.

    Access Veri Taban Veri Tipleri

    Metin : Yazlacak bilgiler harflerden veya hem harf hem desaylardan meydana geliyorsa kullanlacak veri trdr. Bualana bolukta dahil olmak zere en fazla 255 karakter bilgiyazlabilir. Bu alana yazlan bilgiler sadece saylardan daoluabilir, ama yazlan saylar hesaplama ilemlerindekullanlamazlar.

    Not : Uzun metin yada metin ve say bileimi kullanlabilir.Genelde aklama ya da uzun bir not yazlacaksa bu alankullanlr. 64.000 karakterle snrldr.

    44

    Say : renci numaras, rencinin snf gibi saysal bilgileriin kullanlr. Saysal alanlar matematiksel hesaplamalardakullanlabilir. BYTE, TAMSAYI, UZUN TAMSAYI, FT VE TEK

    DUYARLIKLI TANIMLARI YAPILABLR

    Tarih/Saat : 100 ile 9999 arasndaki yllar iin tarih ve saatdeerleridir.

    Para Birimi : zellikle byk parasal geerlerin kullanldalanlardr. Saynn tamsay ksm en fazla 15, ondalkl ksm enfazla 4 karakter olabilir.

    Otomatik Say : Tabloya yeni bir kayt eklendiinde, Accesstarafndan atanan benzersiz ardk (birer birer artan) ya darasgele saylar. Otomatik say alanlar deitirilemez.

    45

    Evet/Hayr : Yalnzca iki deerden birini ieren alanlar Evet /Hayr, Doru / Yanl, Ak / Kapal gibi alanlar gibi.

    OLE Nesnesi : Eer tablo alanlarnda resim, ses veya grafik gibiole nesnelerinin saklanmas szkonusu ise bu tanmlama yaplr.Bu alann bykl en fazla 1 gb olabilir.

    Kpr : Tklandnda kullancy baka bir dosyaya, dosyadaki birkonuma veya Internetteki (www) bir blgeye ynlendirenbalant.

    Arama Sihirbaz : Deerleri baka tablo, sorgu ya da deerlerlistesindeki deerlerden seilen bir alan yaratmamza yardmcolan sihirbaz.

    46

    INPUT MASK (MASKE)

    Verilerin belirli kurallara uymasn salayan kstlamalardr.rnein bir alana sadece saysal deerlerin girilmesigerekirse, InputMaske ksmn ona gre dzenlemekgerekir. Bu giri maskesini oluturulmasnda baz zeliaretlerden faydalanlr:

    ?: A-Z aras alfabetik karakterL: A-Z aras alfabetik karakter*

    #: 0-9 aras rakam veya boluk. + ve kullanlabilir.0: 0-9 aras rakam.+ ve girilemez.*9: 0-9 aras rakam veya boluk.

    *giri zorunlu

    47

    Zorlayc (Constraint, Geerlilik kural)Herhangi bir alan iin girilebilecek verileri kstlayc kurallarazorlayclar denir. rnein, bir rencinin snf bilgisine ait deeriin sadece 1 ile 6 arasnda bir rakam girilmesi gerekiyorsabunun iin zorlayc tanmlamak gerekir. Veri girii srasnda 1 ile6 arasndaki deer dnda bir deerin snf bilgisi alannayazlmas engellenmi olur. Dolays ile snf iin yazlmamasgereken bir deer; bilgi girii balangcnda kontrol edilmi olur.

    lgili alana girilebilecek deerleri snrlayan bir deyim yazlr.Kullanm bazen ok faydaldr ve zellikle yanl bilgi giriiniengeller ve verilerin doru girilmesini zorunlu hale getirir.Kullanc, zorlaycda belirtilen kural dnda bir veriyi tabloyayazmaya altnda, VTYS hata verir. Bylelikle veritabannakullancnn keyfi deerler girmesi nlenmi olur ve veritabannda tutarllk salanm olur.

    48

    Aadaki ekilde mavi izgilerle evrelenmi alanda MsAccess veri taban programnda bir kstlaycnntanmlanmas yaplm ve zellikle kullanc tarafndanyanl bilgi girii engellenmi ve verilerin doru yazlmaszorunlu hale getirilmitir.

  • 8/7/2019 Veri Taban Giris_not1

    9/13

    02.03.2011

    9

    49

    1. Tablolar ve likilerHer Access Veri taban nesnesinin iki yada daha ok grnmvardr. Tablolarn en sk kullanlan iki grnm;

    1. Tasarm Grnm :Tablonun yapsn oluturulur ve deitirilir.

    50

    2. Veri Sayfas Grnm: Tablonun verileri deitirilir

    51

    Anahtar (Key)Tablodaki her kaytta ayn deere sahip olmayan bir alannbulunmas gerekir (rnek TC No). Bu alan iin anahtar(key)tanmlamas yaplmas gerekir. Primary Key, Unique Key veForeign Key olmak zere 3 eit anahtar vardr.

    Primary Key (Birincil Anahtar) : Bu anahtar tanmland alaniin verilerin her kaytta farkl olacan belirtir. rneinOGRENCINO gibi bir alan iin byle bir tanmlama yaplm isetablodaki tm kaytlardaki bu alan farkl deere sahip olacaktr.Yani bu tabloda ayn renci noya sahip iki kii olmamas gerekir.

    52

    Standart olarak bir tabloda verilerin, fiziksel hafza stnde dehangi alana gre sralanacan da primary key belirler. Bu, bazenbir tek alan olabilecei gibi, bazen birden fazla alan da birleerekbir birincil anahtar oluturabilir. rnein programda personelinsicil numaras alanna gre aramalar yaplacaksa Primary keypersonel sicil numaras olmaldr. Primery key tanml bir alana verigirilmesi zorunludur; bo, deersiz(NULL) olamaz.

    Access'te tanmlanabilecek tr Birincil Anahtar vardr;

    Otomatik Say Birincil Anahtar, Tek Alan Birincil Anahtar, Birden Fazla Alan Birincil Anahtar.

    53

    Unique Key(Tekil Anahtar): Unique Key olarak tanmlananalan iin bir deer sadece bir kere girilebilir. Bir baka satradaha ayn verinin girilmesine izin verilmez.Primary Key den farkl olarak Unique Key, NULL (boluk)deerini alabilir. rnein programda her personele ait bir sicilnumaras olaca iin bu alan Unique key olarak tanmlanabilir.Ama isim alan birden fazla ayn isme sahip personel olabileceiiin bir Unique key olarak tanmlanamaz. Ali isimli birden fazlapersonel olabilecei gibi.

    Foreign Key (Yabanc Anahtar) : Tablolar arsndaki iliklileritanmlayan bir kstlamadr.Primery key olarak tanml biralan Foreign key tanml bir baka tablodaki alan balanabilir.Primery key tanml bir alanda bulunan bir deeri bir bakatablodaki Foreign tanml bir alanda bulunan bir grup kaytabalayan yaplardr.

    54

    Access Veri Tabanlarnda bilgiye ulamann dier bir yolu da Sorguoluturmaktr. Birden ok tablodan gelen veriler de iinde olmak zere,yalnzca tam olarak belirlediiniz koullar karlayan verileri bulmak vealmak iin bir sorgu oluturulma-ldr. Bir sorgu bunun yan sra, birdenok kayd ayn anda gncelletirebilir veya silebilir ve verileriniz zerindenceden tanmlanm zel hesaplamalar yapabilir.

    Bursa iin Nisan Siparileri SorgusuBursa iin Nisan Siparileri Sorgusu

    Bu sorgu, siparileri Nisan ayndakarlanmas gereken Bursa'dakimteriler iin Sipari No, Teslim Tarihi,irket Ad ve ehir bilgilerini almakzere iki ayr tabloya eriir.

    2. Sorgular

  • 8/7/2019 Veri Taban Giris_not1

    10/13

    02.03.2011

    10

    55

    Bir sorgu aslnda bir sorudur. rnein Mteriler tablosunun hangikaytlar, Posta Kodu alannda 32700 deerini ieriyor? Sorusunusorabiliriz. Bir Sorguyu altrdmzda (Tabloya Soru Sorduumuzda)

    Access belirtilen tablodaki yada tablolardaki btn kaytlara bakpbelirttiimiz ltlere uyan kaytlar bulur ve bir Veri Sayfas biimindegrntler.

    Access VTYSnin sorularnza yant verebilmesi iin, sorgularnz zelyntemlerle yaplandrmalsnz.

    Tasarm GrnmTasarm Grnm SQL GrnmSQL Grnm1 2

    56

    Formlar, zerine kullancnn bilgiyi grmelerine yada bilgi girmelerinisalayan denetimler ekleyebileceimiz pencerelerdir. Access, iindeetiketler, metin kutular, seenek dmeleri ve onay kutular gibi bir ok

    standart Windows denetimi barndran bir ara ubuu sunar. Budenetimler kullanlarak Tasarm G-rnmnde formlar oluturulabilir.

    Form bir seferde tek bir kaytzerinde odaklanr ve birdenok tablonun alanlarngrntleyebi-lir. Ayrca,resimleri ve dier nesneleri degrn-tleyebilir.

    Form verileri yazdran, baka nesneleri aan veyagrevleri dier ekillerde otomatikletiren bir dmeierebilir.

    3. Formlar

    57

    Formlar, temeli oluturan tablodaki verileri kolayca grntlemek,veri girmek ve deitirmek iin oluturabilirsiniz. Formu atnzda,Microsoft Access bir veya birden ok tablodan gelen verileri alr vebunlar ekranda Form Sihirbaz'nda setiiniz veya Tasarmgrnmndekendi oluturduunuz dzende grntleyebilir.

    Formlar da, tablo ve sorgularda olduu gibi birka grnmdegrntleyebilirsiniz.

    1. Form Grnm (Grsel olarak Kaytlar grntlenir)

    2. Veri Sayfas Grnm (Kaytlar, Tablolarda olduu gibi liste

    eklinde grntlenir)3. Tasarm Grnm (Formun grn, ileyi biimini ve

    tasarmn dzenlemek iin form nesneleri zerine deiiklikyaplabilir)

    58

    Raporlar, Tablolardan veya Sorgulardan gelen bilgileri, gzelcedzenlenmi ve kolay eriilebilir bir biimde, bilgisayar monitrndeveya kat zerinde grntlemek iin kullanlan Access nesnesidir.Verilerinizi zmlemek veya onlar kat zerinde belirli bir yollasunmak zere bir rapor oluturabilirsiniz. rnein, verileri gruplandranve toplamlar hesaplayan bir rapor ve farkl verilerin postalamaetiketlerini yazdrmak zere biimlendirilmi olduu baka bir raporyazdrabilirsiniz.

    Postalama etiketleri o luturmak iin birrapor hazrlayabilir,

    Bir grafikte toplamlar gstermek iinbir rapor oluturabilir,

    Toplamlar hesaplamak iin bir raporkullanabilirsiniz.

    4. Raporlar

    59

    Raporlar birden ok Tablo veya Sorgudan seilmi bilgileri, veritabanndan hesaplanm deerleri, stbilgiler, altbilgiler ve balklar gibibiimlendirme eleri ierebilir.

    Raporlara deiik grnmde bakabiliriz. Raporlarn tasar-mndeitirebileceimiz TasarmTasarm GrnmGrnm, Yazdrldnda naslgrntleneceini grebileceimiz BaskBask nn zlemezleme, fazla ayrntlolmayan sadece elerin yerleim dzenini grebilece-imiz YerleimYerleim nnzlemezlemedir. 60

    Veritabanlarnda indeks oluturularak, veriler veritabanndakikaytl olduklar sradan baka bir srada gsterilebilir ve tpkktphanedeki bir kitaba ulamada olduu gibi istenilen veriyedaha ksa srede ve kolayca ulalabilir.Temelde indekslerin ilikisel veritabannda u ilevi vardr:1.Tekil indeksler, veri ilikilerini ve veri btnln salayanbirincil anahtar alanlar oluturmada kullanlr.2. ndeks olan alann deerine gre bir kaydn kaytlar arasndakisrasn gsterirler.3.Sorgularn neticelenme srelerini ksaltrlar.

    Index (ndeks)

  • 8/7/2019 Veri Taban Giris_not1

    11/13

    02.03.2011

    11

    61

    ki veya daha fazla tabloyu birlikte sorgulama ilemine join

    ismi verilir. likisel veritabannn en temelinde birden fazlatablo stnde birlikte ilem yapabilmek yatar.Bu sayede verilerin tekrarlanmas nlenmi olur ve sonutaveri ynetimi kolaylar. rnein, Kitap tablosunda, Kitabnbir tekil numara ile listesini tutmak ve dn listesinde debu Kitabn kim tarafndan alndnn, geri getirilipgetirilmediinin kayd tutulmaktadr. Bazen, bu iki tablodakibilgilere de bir tek sorgu sonucu olarak ihtiya duyulabilir.

    likilendirme ( Joining)

    62

    VARLIK-LKSEL MODEL(Entity Relationship Model, ER Model)

    Belirli bir kurulua/konuya ilikin verilerin mantksal dzeydedzenlenmesini gsteren ve kendi aralarnda anlaml bir btnoluturan iliki emalarnn btnne, varlk-iliki modelidenir.Buradaki varlk; benzersiz bir ekilde tanmlanabilen vebamsz var olabilme yetisine sahip nesne ya da oluumolarak tanmlanabilir.Varlklar, ev, araba gibi fiziksel nesneler olabilecei gibimteri demesi veya sipari gibi soyut nesneleri de ierirler.liki emasnda genellikle, ilgili niteliklerin alt izilerek ilikianahtar gsterilir.

    63

    Varlk (Entity): Varolan ve benzerlerinden ayrt edilebilenher eye, her nesneye denir.rnek: personel, ev, mteri, rn, sat, alma deneyimi

    Varlk kmesi(Entity set): Ayn trden benzer varlklarnoluturduu kmeye denir.Varlk kmelerinin ayrk kmelerolmas gerekmez.Bunlar i ie, kesien yada ayrk kmelerolabilir.rnek olarak, renciler, kz renciler, yurtrencileri, alan dersler, retmenler, vb.. sayabiliriz.

    TEMEL TANIMLAR ve KAVRAMLAR

    rnein; Burak bir varlk olmasna karlk; onun yer aldrenci tanm da bir varlk olarak deerlendirilir.

    64

    Nitelikler (Attributes) : Bir varlk kmesindeki nesnelerinzelliklerini gstermek ve varlklar birbirinden ayrt etmekiin kullanlr.Tablo ierisindeki kolonlara karlk gelir.

    65

    Bant( relationship): ki ya da daha ok saydaki varln

    birlemesi, bir araya gelmesi, aralarnda iliki kurulmasnabant denir.

    rnein bir renci ile bir ders, firma ile malzeme, kii ileotomobil gibi. Bunlar ikili bantlardr. Bir ii, rn ve makinebir araya getirilirse bu bant l olur.

    Bant Kmesi (Relationship Set): Ayn tr benzerbantlarn kmesine bant kmesi (relationship set) adverilir.Matematiksel olarak E1, E2, E3,,En varlk kmeleriarasndaki bir R bants yletanmlanr;R = { (e1, e2, e3,, en) : e1 E1, e2 E2, e3 E3, , en En}

    66

    Varlk iliki izelgesinde varlk kmesi, nitelik ve ilikiaadaki ekiller yardm ile gsterilir.

    Aadaki ekillerde varlk kmeleri, nitelikler, bantkmeleri ve rollere ilikin varlk- iliki diyagram rneklerigsterilmitir.

    E-R Modelindeki Kavram ve Yaplar

    NitelikBant kmesi(liki)

    Varlk kmesi

  • 8/7/2019 Veri Taban Giris_not1

    12/13

    02.03.2011

    12

    67

    OGRENCI

    OGRNO DOGTAR CINSSOYADIADI

    Varlk kmesi ve nitelik rnekleri

    DERS DERSADIDKODU

    KREDISI

    RENC ve DERS varlk kmelerine karlk, ilikisel modeldeaadaki iliki emalar oluturulur.

    OGRENC (OGRNO, ADI, SOYADI, CINS, DOGTAR) DERS (DKODU, DERSADI, KREDISI)

    68

    Bir varlkla ilikiye girilebilecek varlklarn saysna eleme

    says ad verilir.Eleme says n>=2 varlk iin sz konusudur ve ikiliilikilerin ortaya konulmas asndan yararldr.

    A ve B gibi iki varlk kmesi arasndaki R iliki kmesi iineleme durumlar u ekilde ifade edilir:

    Birden-bire (one to one, 1:1) Birden-oa(one to many, 1:n) oktan-bire (many to one, n:1) oktan-oa (many to many, n:n)

    Varlklar aras likiler(Eleme)

    69

    A varlk kmesi iindeki bir varlk, B kmesi iindeki sadecebir varlk ile ilikili ise birden-bire iliki sz konusudur.

    Birden-bire liki

    ekil zerinde gsterildii gibi, her bir mteri sadece bir hesapnumaras ile elenebilmektedir. Ayn biimde bir hesapnumaras sadece bir mteriye verilebilmektedir. O halde bubirden-bire ilikidir.

    70

    A kmesi iindeki bir varlk B kmesi iindeki birden fazlavarlk ile ilikili ise, bu ilikiye birden-oa iliki ad verilir.Bkmesindeki bir varlk, A kmesindeki sadece bir varlk ileeleebilir.

    Birden-oa liki

    71

    A varlk kmesindeki birden fazla varlk, B kmesindeki birvarlk ile ilikili ise bu elemeye oktan-bire iliki ad verilir.

    oktan-bire liki

    72

    A varlk kmesindeki birden fazla varlk, B kmesindekibirden fazla varlk ile ilikili ise bu elemeye oktan-oailiki ad verilir.

    oktan-oa liki

    Mteri-hesap ilikilerinde, aile yelerinin ortak hesap aabilmesidurumunda oktan-oa iliki sz konusu olmaktadr. Bu ekil, mteri-hesap ilikisinin oktan-oa b iiminde olduunu gstermektedir.Mteriler birden fazla hesaba sahip olabilmekte ve birden fazla mteriayn hesab aabilmektedir. rnein, Burak isimli kullanc 4500 ve2310 numaral iki hesaba sahiptir. Buna karlk, 4500 numaral hesabnayn aileye ye Burak dnda Begm isimli bir baka mterisibulunmaktadr.

  • 8/7/2019 Veri Taban Giris_not1

    13/13

    02.03.2011

    13

    73

    liki kmesi rnei

    ERKEK KADIN

    BLM

    DERSRENC

    RENC

    EVLLK

    OKUYAN

    ALDII

    1

    1

    n

    1

    n

    m

    Anneocuk ???1 1

    ocukAnne ???1 n

    74

    DERSOGRETMEN 1 nn m

    m nOGRENCI

    ODO

    l iliki kmesi rnei

    75 76

    MALZEMEMAGAZA mSATTIGI

    n

    MAGNO MADIMKODUMIKTARMAGADI

    liki kmesinin tanmlayc nitelii

    likilerin tanmlayc nitelikleri de bulunabilir.rneinmaaza ve malzeme varlk kmeleri arasndaki sattilikinin MKTAR adl bir tanmlayc nitelii olabilir.