Professional Documents
Culture Documents
2011
Konular
1 2
5 6
1
02.03.2011
Veri Tabanlarının Kısa Tarihçesi ÖRNEK : Bir kişisel telefon rehberi bir veritabanı olarak
görülebilir.
1980’ler
Ad Soyad Şehir Kodu Telefon No
İlişkisel Veri tabanları teknolojisinin gelişmesi Mehmet Türkmen 322 2384153
ISO tarafından SQL’in standartlaştırılması (1980’lerin ortaları-sonu) Uğur Yüksel 216 2761651
Erhan Seçilen 212 4327862
Yükseliş devri
İbrahim Sağlam 318 6115240
1990’lar Ramazan Tekinarslan 322 7145678
İlişkisel teknolojinin yaygınlaşması ve başarımın yükselişi Veli Korkmaz 322 4567890
2
02.03.2011
15 16
2. Hiyerarşik Veri Tabanı: Bu modelde veriler ağaç 3.Ağ Veri Tabanları : Hiyerarşik veri tabanlarının
yapısına benzer bir biçimde modellenir. En üste kök ve yetersiz kalmasından dolayı bilim adamlarının ortak
kökün dalları bulunur. Ayrıca her dalın alt dalı sayesinde çalışması sonucu ortaya konulmuş bir veri tabanı türüdür.
dallanma ve çeşitlilik artar. Bu modelde her bir alt dalın Ağ veri tabanları verileri ağaçların daha da gelişmiş hali
sadece bir tane noktadan bağlanma şartı bu modelin en olan graflar (ağacın kendiside özel bir graftır.) şeklinde
büyük kısıtlamalarından biridir. Hiyerarşik veri modeli saklarlar. Bu yapı en karışık yapılardan biridir.
1960 ve 1970 yılları arasında popüler olan bir modeldi.
Yazarlar
Kitaplar
(no, başlık)
Konular Kitaplar
Yazarlar Yayıncılar
Yayıncılar Konular
(ad, soyad)
17 18
3
02.03.2011
19 20
21 22
6. Nesne-İlişkisel Veri-tabanı Modeli : Veriler nesne VERİTABANI YÖNETİM SİSTEMİ (VTYS) NEDİR?
olarak modellenir ve yaratılır. Nesneye-Yönelik Programlama (DATABASE MANAGEMENT SYSTEM-DBMS)
(OOP) da olan sınıf ve miras kavramlarına sahiptir.
Karmaşık veriler üzerinde işlem yaparken yüksek performans Veri tabanı yönetim sistemi(VTYS), yeni bir veritabanı
sunan bir yaklaşımdır. oluşturmak, veri tabanını düzenlemek, geliştirmek ve bakımını
yapmak gibi çeşitli karmaşık işlemlerin gerçekleştirildiği birden
Nesne-İlişkisel Veritabanı modeli küresel bir yapıya sahiptir. fazla programdan oluşmuş bir yazılım sistemidir. Veri tabanı
Veri tabanı üzerindeki herhangi bir veriye, yüksek yönetim sistemi, kullanıcı ile veri tabanı arasında bir arabirim
performansta erişim sağlar. Fakat yine de birden fazla veri oluşturmaktadır ve veri tabanına her türlü erişimi sağlar. Veri
istenildiği zaman bu modelde de veri tabanı performansı çok tabanının tanımlanması: veri tabanını oluşturan verilerin tip ve
kötü bir darbe alır. uzunluklarının belirlenmesidir. Veri tabanını oluşturulması ise veri
için yer belirlemesi ve saklama ortamına verilerin yüklenmesini
Bu veri tabanı modeli ilişkisel ve nesne veri tabanı modellerini ifade eder.
bir şekilde aynı çatı altına almak için 1990 lı yıllarda
oluşturuldu.
23 24
4
02.03.2011
25 26
27 28
1. Microsoft Access
Veri Girişi ve
Raporlar
2. MySQL
3. IBM DB2
4. Interbase
Satış uyg. programları
satış VTYS 5. Informix
6. Progress
7. Microsoft SQL Server
Mülk, Ev sahibi,
Veri Girişi ve Kiracı,Sözleşme
ayrıntıları+Kütük tanımları
8. PostgreSQL
Raporlar
Veri Tabanı 9. Oracle
29 30
5
02.03.2011
MS Access MySQL
Windows, Linux, OS/2,Solaris, AIX vb.
Microsoft Office ürünüdür. “trigger” ve “stored procedure” özelliklerine sahiptir, ancak “Transaction
Küçük ölçekli uygulamalar içindir. logging” özelliği bulunmamaktadır.
Tablo başına 2 GB a kadar veri depolayabilir. Çok hızlı, güvenilir ve kullanımı kolay. Özellikle internet ortamında önem
kazanan, çok esnek ve güçlü bir kullanıcı erişim
Aynı anda 255 bağlantıya izin verebilir. kısıtlama/yetkilendirme sistemine sahip.
MS Windows dışındaki sistemlerde kullanılamaz. Tablo başına 4 TB veri depolayabilir.
SQL standart çalışma araçları kullanılmaktadır.
“Transaction logging” özelliğine sahiptir, ancak “trigger”
IBM DB2
ve “stored procedure” özelliklerine sahip değildir. Access ve MySQL e göre daha performanslı, ancak küçük
işletmelere göre daha yüksek maliyete sahiptir.
Unix ve Windows üzerinde çalışabilir.
Transaction logging”, “trigger” ve “stored procedure”
özelliklerine sahiptir.
31 32
Informix PostgreSQL
Ücretli ve güçlü bir veritabanıdır. Linux, Unix, BSD, Windows, AIX vb.
Orta ölçekli işletmelerin yükünü kaldırabilecek kapasitededir. Ücretsiz, akademik bir veritabanı
1994’deki Postgres kodundan geliştirilmeye başlanmıştır. Çok güçlü işlem yapısı
Veri güvenliği ön planda
Microsoft SQL Tablo başına 64 TB veri tutabilme özelliği
Dezavantajları: “Transaction”, “Inheritance” “trigger” ve “stored procedure”
özelliklerine sahiptir.
Sadece Windows üzerinde çalışabilir.
Oracle
Yüksek maliyet Dünyanın en güçlü ve güvenilir veritabanı olarak
Kullanım kolaylığı, güvenilirliği,işlem gücü gösterilmektedir.
Tablo başına 4 TB veri. Çok yüksek maliyet
“Transaction logging”, “trigger” ve “stored procedure” Windows, Unix, Linux, ...
özelliklerine sahiptir.
Oracle, sınırsız sayıda tabloları desteklemektedir.
33 34
35 36
6
02.03.2011
Tablolar ve İlişkiler
MS Access Veri Tabanı Nesneleri
Tablolar en temel veri tabanı nesneleridir. Amaçları bilgi
Tablolar depolamaktır. Bir veritabanında bir veya daha fazla tablo olabilir.
Örneğin obs isimli veritabanında bölümler, dersler, fakülteler,
Sorgular
öğrenciler ve notlar isimli tablolar bulunabilir. Verilerinizi saklamak
Formlar
üzere, izlediğiniz her bilgi türü için bir tablo oluşturmalısınız. Birden
Raporlar çok tablodan gelen verileri bir Sorgu, Form, Rapor veya Veri Erişim
Sayfalar Sayfasında bir araya getirmek için, tablolar arasında ilişkiler
Makrolar tanımlanmalıdır.
Modüller
37 38
TABLO
Her sütun bir bilgi kategorisi olan bir alanı temsil eder.
Her satır ise bir öğrenci için bilgi saklayan kayıttan oluşur.
Alan
39 40
41 42
7
02.03.2011
Tablonun alan isimleri belirkendikten sonra, herbir alanın Sayı : Öğrenci numarası, öğrencinin sınıfı gibi sayısal bilgiler
içerdiği veri türünün de belirtilmesi gerekir. için kullanılır. Sayısal alanlar matematiksel hesaplamalarda
kullanılabilir. BYTE, TAMSAYI, UZUN TAMSAYI, ÇİFT VE TEK
Access Veri Tabanı Veri Tipleri DUYARLIKLI TANIMLARI YAPILABİLİR
Metin : Yazılacak bilgiler harflerden veya hem harf hem de Tarih/Saat : 100 ile 9999 arasındaki yıllar için tarih ve saat
sayılardan meydana geliyorsa kullanılacak veri türüdür. Bu değerleridir.
alana boşlukta dahil olmak üzere en fazla 255 karakter bilgi
yazılabilir. Bu alana yazılan bilgiler sadece sayılardan da Para Birimi : Özellikle büyük parasal geğerlerin kullanıldığı
oluşabilir, ama yazılan sayılar hesaplama işlemlerinde alanlardır. Sayının tamsayı kısmı en fazla 15, ondalıklı kısmı en
kullanılamazlar. fazla 4 karakter olabilir.
Not : Uzun metin yada metin ve sayı bileşimi kullanılabilir. Otomatik Sayı : Tabloya yeni bir kayıt eklendiğinde, Access
Genelde açıklama ya da uzun bir not yazılacaksa bu alan tarafından atanan benzersiz ardışık (birer birer artan) ya da
kullanılır. 64.000 karakterle sınırlıdır. rasgele sayılar. Otomatik sayı alanları değiştirilemez.
43 44
45 46
8
02.03.2011
1. Tablolar ve İlişkiler
Her Access Veri tabanı nesnesinin iki yada daha çok görünümü 2. Veri Sayfası Görünümü: Tablonun verileri değiştirilir
vardır. Tabloların en sık kullanılan iki görünümü;
49 50
Anahtar (Key) Standart olarak bir tabloda verilerin, fiziksel hafıza üstünde de
Tablodaki her kayıtta aynı değere sahip olmayan bir alanın hangi alana göre sıralanacağını da primary key belirler. Bu, bazen
bulunması gerekir (Örnek TC No). Bu alan için anahtar(key) bir tek alan olabileceği gibi, bazen birden fazla alan da birleşerek
tanımlaması yapılması gerekir. Primary Key, Unique Key ve bir birincil anahtar oluşturabilir. Örneğin programda personelin
Foreign Key olmak üzere 3 çeşit anahtar vardır. sicil numarası alanına göre aramalar yapılacaksa Primary key
personel sicil numarası olmalıdır. Primery key tanımlı bir alana veri
Primary Key (Birincil Anahtar) : Bu anahtar tanımlandığı alan girilmesi zorunludur; boş, değersiz(NULL) olamaz.
için verilerin her kayıtta farklı olacağını belirtir. Örneğin
OGRENCINO gibi bir alan için böyle bir tanımlama yapılmış ise Access'te tanımlanabilecek üç tür Birincil Anahtar vardır;
tablodaki tüm kayıtlardaki bu alan farklı değere sahip olacaktır.
Yani bu tabloda aynı öğrenci noya sahip iki kişi olmaması gerekir. Otomatik Sayı Birincil Anahtarı,
Tek Alan Birincil Anahtarı,
Birden Fazla Alan Birincil Anahtarı.
51 52
53 54
9
02.03.2011
3. Formlar
Bir sorgu aslında bir sorudur. Örneğin Müşteriler tablosunun hangi Formlar, üzerine kullanıcının bilgiyi görmelerine yada bilgi girmelerini
kayıtları, Posta Kodu alanında 32700 değerini içeriyor? Sorusunu sağlayan denetimler ekleyebileceğimiz pencerelerdir. Access, içinde
sorabiliriz. Bir Sorguyu çalıştırdığımızda (Tabloya Soru Sorduğumuzda) etiketler, metin kutuları, seçenek düğmeleri ve onay kutuları gibi bir çok
Access belirtilen tablodaki yada tablolardaki bütün kayıtlara bakıp standart Windows denetimi barındıran bir araç çubuğu sunar. Bu
belirttiğimiz ölçütlere uyan kayıtları bulur ve bir Veri Sayfası biçiminde denetimler kullanılarak Tasarım Gö-rünümünde formlar oluşturulabilir.
görüntüler.
Access VTYS’nin sorularınıza yanıt verebilmesi için, sorgularınızı özel
yöntemlerle yapılandırmalısınız.
4. Raporlar
Formları, temeli oluşturan tablodaki verileri kolayca görüntülemek, Raporlar, Tablolardan veya Sorgulardan gelen bilgileri, güzelce
veri girmek ve değiştirmek için oluşturabilirsiniz. Formu açtığınızda, düzenlenmiş ve kolay erişilebilir bir biçimde, bilgisayar monitöründe
veya kağıt üzerinde görüntülemek için kullanılan Access nesnesidir.
Microsoft Access bir veya birden çok tablodan gelen verileri alır ve
Verilerinizi çözümlemek veya onları kağıt üzerinde belirli bir yolla
bunları ekranda Form Sihirbazı'nda seçtiğiniz veya Tasarım sunmak üzere bir rapor oluşturabilirsiniz. Örneğin, verileri gruplandıran
görünümünde kendi oluşturduğunuz düzende görüntüleyebilir. ve toplamları hesaplayan bir rapor ve farklı verilerin postalama
Formları da, tablo ve sorgularda olduğu gibi birkaç görünümde etiketlerini yazdırmak üzere biçimlendirilmiş olduğu başka bir rapor
yazdırabilirsiniz.
görüntüleyebilirsiniz. Postalama etiketleri oluşturmak için bir
1. Form Görünümü (Görsel olarak Kayıtlar görüntülenir) rapor hazırlayabilir,
2. Veri Sayfası Görünümü (Kayıtlar, Tablolarda olduğu gibi liste
şeklinde görüntülenir)
Bir grafikte toplamları göstermek için
3. Tasarım Görünümü (Formun görünüş, işleyiş biçimini ve
bir rapor oluşturabilir,
tasarımını düzenlemek için form nesneleri üzerine değişiklik
yapılabilir)
Toplamları hesaplamak için bir rapor
kullanabilirsiniz.
57 58
Index (İndeks)
Raporlar birden çok Tablo veya Sorgudan seçilmiş bilgileri, veri
tabanından hesaplanmış değerleri, üstbilgiler, altbilgiler ve başlıklar gibi Veritabanlarında indeks oluşturularak, veriler veritabanındaki
biçimlendirme öğeleri içerebilir. kayıtlı oldukları sıradan başka bir sırada gösterilebilir ve tıpkı
kütüphanedeki bir kitaba ulaşmada olduğu gibi istenilen veriye
daha kısa sürede ve kolayca ulaşılabilir.
Temelde indekslerin ilişkisel veritabanında şu üç işlevi vardır:
1.Tekil indeksler, veri ilişkilerini ve veri bütünlüğünü sağlayan
birincil anahtar alanlar oluşturmada kullanılır.
2. İndeks olan alanın değerine göre bir kaydın kayıtlar arasındaki
sırasını gösterirler.
3.Sorguların neticelenme sürelerini kısaltırlar.
10
02.03.2011
İlişkilendirme ( Joining)
VARLIK-İLİŞKİSEL MODEL
(Entity –Relationship Model, ER Model)
İki veya daha fazla tabloyu birlikte sorgulama işlemine join
ismi verilir. İlişkisel veritabanının en temelinde birden fazla Belirli bir kuruluşa/konuya ilişkin verilerin mantıksal düzeyde
tablo üstünde birlikte işlem yapabilmek yatar. düzenlenmesini gösteren ve kendi aralarında anlamlı bir bütün
Bu sayede verilerin tekrarlanması önlenmiş olur ve sonuçta oluşturan ilişki şemalarının bütününe, varlık-ilişki modeli
veri yönetimi kolaylaşır. Örneğin, Kitap tablosunda, Kitabın denir.
bir tekil numara ile listesini tutmak ve ödünç listesinde de Buradaki varlık; benzersiz bir şekilde tanımlanabilen ve
bu Kitabın kim tarafından alındığının, geri getirilip bağımsız var olabilme yetisine sahip nesne ya da oluşum
getirilmediğinin kaydı tutulmaktadır. Bazen, bu iki tablodaki olarak tanımlanabilir.
bilgilere de bir tek sorgu sonucu olarak ihtiyaç duyulabilir. Varlıklar, ev, araba gibi fiziksel nesneler olabileceği gibi
müşteri ödemesi veya sipariş gibi soyut nesneleri de içerirler.
İlişki şemasında genellikle, ilgili niteliklerin altı çizilerek ilişki
anahtarı gösterilir.
61 62
Bağıntı( relationship): İki ya da daha çok sayıdaki varlığın E-R Modelindeki Kavram ve Yapılar
birleşmesi, bir araya gelmesi, aralarında ilişki kurulmasına
bağıntı denir.
Varlık ilişki çizelgesinde varlık kümesi, nitelik ve ilişki
Örneğin bir öğrenci ile bir ders, firma ile malzeme, kişi ile aşağıdaki şekiller yardımı ile gösterilir.
otomobil gibi. Bunlar ikili bağıntılardır. Bir işçi, ürün ve makine
bir araya getirilirse bu bağıntı üçlü olur.
Varlık kümesi Bağıntı kümesi
(İlişki) Nitelik
Bağıntı Kümesi (Relationship Set): Aynı tür benzer
bağıntıların kümesine bağıntı kümesi (relationship set) adı
verilir.Matematiksel olarak E1, E2, E3,…,En varlık kümeleri Aşağıdaki şekillerde varlık kümeleri, nitelikler, bağıntı
arasındaki bir R bağıntısı şöyle kümeleri ve rollere ilişkin varlık- ilişki diyagramı örnekleri
tanımlanır; gösterilmiştir.
R = { (e1, e2, e3,…, en) : e1 E1, e2 E2, e3 E3, …, en En}
65 66
11
02.03.2011
ÖĞRENCİ ve DERS varlık kümelerine karşılık, ilişkisel modelde Birden-bire (one to one, 1:1)
aşağıdaki ilişki şemaları oluşturulur. Birden-çoğa(one to many, 1:n)
Çoktan-bire (many to one, n:1)
• OGRENCİ (OGRNO, ADI, SOYADI, CINS, DOGTAR) Çoktan-çoğa (many to many, n:n)
• DERS (DKODU, DERSADI, KREDISI)
67 68
Şekil üzerinde gösterildiği gibi, her bir müşteri sadece bir hesap
numarası ile eşlenebilmektedir. Aynı biçimde bir hesap
numarası sadece bir müşteriye verilebilmektedir. O halde bu
birden-bire ilişkidir.
69 70
12
02.03.2011
OGRETMEN 1 n DERS
ODO
ERKEK 1 1 KADIN n m
EVLİLİK
m n
BÖLÜM 1 n ÖĞRENCİ OGRENCI
OKUYAN
ÖĞRENCİ n m DERS
ALDIĞI
Üçlü ilişki kümesi örneği
Çocuk 1 1 Anne
???
Anne 1 n Çocuk
???
MAGAZA n m MALZEME
SATTIGI
75 76
13