1 / 61

2.1. İlişkisel Veri Tabanları “Relational Database”

2.1. İlişkisel Veri Tabanları “Relational Database”. İlişkisel Veri Tabanları. Sütun ve satırlardan oluşan tablolar ile verileri depolamak için kullanılan bir veri tabanı modelidir

Download Presentation

2.1. İlişkisel Veri Tabanları “Relational Database”

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 2.1. İlişkisel Veri Tabanları “Relational Database”

  2. İlişkisel Veri Tabanları • Sütun ve satırlardan oluşan tablolar ile verileri depolamak için kullanılan bir veri tabanı modelidir • Bir tablo, belirli bir nesneye ait özellikleri içerir. Sütunlar detayın özelliklerdir (öznitelik), satırlar nesneye ait birer olaydır (kayıt) • Her tablonun/nesnenin kendisi için indeks anlamını taşıyan bir özniteliği vardır (primary key). Nesneye ait tüm kayıtlarda bu özniteliğin değeri tekdir

  3. İlişkisel Veri Tabanları • Tablolar arasında bağlantı kurmak için “primary key” • yada başka bir sütun olan “secondary/foreign key” kullanılır • Birbiri ile ilişkili nesneler/tablolar • İlişkisel yapı bire-bir ve bire-çok (çoka-bir) ilişkiyi destekler • Çoka-çok ilişki 3 tablo ile çözülür (ilişkiler bire-çok, bire-çok) haline dönüştürülür

  4. Değer türü(sayı, karakter, tarih vb) • Büyüklüğü (10 hane vb) • Değer girilme zorunluluğu • Veri tekrarı • Anahtar öznitelik

  5. File Patient Record Key Check-in Check Out Room No. 42 2/1/96 2/4/96 N763 78 2/3/96 2/4/96 N712 Purchase Record File Item Date Price Customer Key Skate Board 2/1/96 49.95 John Smith 42 Baseball Bat 2/1/96 17.99 James Brown 978 File Accident Report Date Injury Name Key Location 75 Elm Street 2/1/96 Broken Leg John Smith 42 2/2/96 Concussion Sylvia Jones 654 12 State Street 2/2/96 Cut on Ear Robert Doe 123 2323 Broad Street İlişkisel Veri Tabanı

  6. Örnek

  7. Kavramsal Veri Tasarımı Varlıklar, Öznitelikler ve İlişkilere karar verme Varlık-İlişki (E-R) diyagramı veya UML sınıf diyagramının çizilmesi

  8. Varlık-İlişki Diyagramı

  9. UML Sınıf Diyagramı

  10. Mantıksal Veri Tasarımı Kavramsal şema, kullanılacak yazılım doğrultusunda mantıksal şemaya dönüştürülür • E-R deki varlıklar veya UML sınıfları birer tablo olarak düşünülür • Çoka-çok bağlantılar da arada bir tablo söz konusudur • Anahtar öznitelikler tanımlanır • Tabloların normalizasyon kurallarına uyup uymadığı denetlenir

  11. Anahtar Öznitelikler

  12. Normalizasyon/Ayrıştırma • Bir tablo içerisinde yer alacak kayıdın nelerden (hangi özniteliklerden) oluşacağına karar vermeye yarayan kurallardır • E-R veya UML diyagramlarının bu kurallara uyup uymadığı denetlenir • Sonuçta bellek, erişim, bütünlük açısından problemsiz tablolar oluşturulmuş olur

  13. Normalizasyon Kuralları • Bir satırdaki her kolon tek bir bilgi içerebilir. Tekrarlayan gruplar olmamalıdır • Bir tablodaki öznitelikler anahtar özniteliğe bağımlı olmalıdır • Diğer öznitelikler arasında birbirine bağımlılık olmamalıdır

  14. SQL-Standard/Structured Query Language • İlişkisel VTYS’nde veri tanımlama ve erişim olanakları sağlar • Doğrudan veya bir programlama dili içinde kullanılır • İlişkisel cebir ve küme işlemleri temellidir • Sorgulama sonucu görsel olarak ilgili kayıtları içeren yeni bir tablodur

  15. select A1 ,A2 , ..., An veya * from r1 ,r2 , ..., rm where P; – A: öznitelikler-attributes – r: tablolar/ilişkiler – P: koşul

  16. İstatistiksel Fonksiyonlar avg: average value min: minimum value max:maximum value sum: sum of values count: number of values

  17. Normalizasyon-Örnek

  18. Dönem ve Öğrenci Verileri Öğrenci kimlik Öğrenci aldığı dersler Öğrenci Danışmanı Dönem Not Ortalaması

  19. OgrenciKimlik(ogrenciNo, adi, soyadi, dogumTarihi, dogumYeri, babasi, adresi) PersonelKimlik(sicilNo, adi, soyadi, ...) OgrenciDanisman(ogrenciNo, sicilNo)

  20. DersSinif(dersSinifKodu, dersKodu, grubu, sinifi) Ders(dersKodu, dersler)

  21. OgrenciNot(ogrenciNotKodu, ogrenciNo, dersKodu, grubu,notu) NotKarsilik(notu, notKarsiligi)

  22. ÖğrenciDanışmanDersNot(Öğrenci No,Adı-Soyadı,Doğum Tarihi,Doğum Yeri,Babası,Adresi,Danışman Kodu,Danışmanı,Ders Kodu,Grubu,Dersler,Sınıf,Not,Not karşılığı) • OgrenciKimlik(ogrenciNo, adi, soyadi, dogumTarihi, dogumYeri, babasi, adresi) • PersonelKimlik(sicilNo, adi, soyadi, ...) • OgrenciDanisman(ogrenciNo, sicilNo) • DersSinif(dersSinifKodu, dersKodu, grubu, sinifi) • Ders(dersKodu, dersler) • OgrenciNot(ogrenciNotKodu, ogrenciNo, dersKodu, grubu,notu) • NotKarsilik(notu, notKarsiligi)

  23. SQL Örnekleri

  24. Öğrenci Kimlik Bilgileri SELECT * FROM OgrenciKimlik WHERE (((OgrenciKimlik.ogrenciNo)=[No gir]));

  25. SELECT * FROM OgrenciKimlik WHERE (((OgrenciKimlik.adi)=[Adı]) AND ((OgrenciKimlik.soyadi)=[Soyadi]));

  26. Aldığı Dersler SELECT OgrenciKimlik.ogrenciNo, OgrenciNot.dersKodu, Ders.dersler FROM Ders INNER JOIN (OgrenciKimlik INNER JOIN OgrenciNot ON OgrenciKimlik.ogrenciNo=OgrenciNot.ogrenciNo) ON Ders.dersKodu=OgrenciNot.dersKodu WHERE (((OgrenciKimlik.ogrenciNo)=[No]));

  27. Dersi Alan Öğrenciler SELECT OgrenciKimlik.ogrenciNo, OgrenciKimlik.adi, OgrenciKimlik.soyadi, OgrenciNot.dersKodu, Ders.dersler FROM DersINNER JOIN (OgrenciKimlikINNER JOINOgrenciNotON OgrenciKimlik.ogrenciNo = OgrenciNot.ogrenciNo)ON Ders.dersKodu = OgrenciNot.dersKodu WHERE (((Ders.dersler)=[Ders Adı]));

  28. Dönem Not Ortalaması SELECT OgrenciNot.ogrenciNo, OgrenciKimlik.adi, OgrenciKimlik.soyadi, Avg(NotKarsilik.notKarsiligi) AS NotOrtalaması INTO aa FROM OgrenciKimlik INNER JOIN (NotKarsilik INNER JOIN OgrenciNot ON NotKarsilik.notu = OgrenciNot.notu) ON OgrenciKimlik.ogrenciNo = OgrenciNot.ogrenciNo GROUP BY OgrenciNot.ogrenciNo, OgrenciKimlik.adi, OgrenciKimlik.soyadi; ! Aritmetik Ortalama

  29. SELECT Avg(NotKarsilik.notKarsiligi) AS NotOrtalaması FROM [ogrenci bul "no"] INNER JOIN (NotKarsilik INNER JOIN OgrenciNot ON NotKarsilik.notu=OgrenciNot.notu) ON [ogrenci bul "no"].ogrenciNo=OgrenciNot.ogrenciNo; ! Aritmetik Ortalama

  30. 3. Coğrafi Bilgi Sistemleri

  31. Coğrafi Bilgi Sistemleri Konumsal verileri üreten, kullanan kurumların, kişilerin; • günlük işlerini kolaylaştıran, destekleyen • karar verme ve problem çözme işlerinde destek sağlayan bilgi/bilişim sistemleridir

  32. Temel İşlevler • Verilerin bilgisayara girilmesi/aktarılması • Fiziksel ortamda depolama • Erişim • Güvenlik • İşleme • Sorgulama, Mekansal analizler • Rapor ve harita hazırlama • Yayınlama

  33. Diğer bilgi sistemleri ile benzerlikleri • Veri tabanı yönetim sistemi yazılımları • Donanım • İletişim yapısı • Kişi bileşeni • Bazı süreçler – Uygulama programları • Bazı yöntemler

  34. Tarihçe • Tematik kartoğrafya • Plancılar klasik yöntemler ile (elle) harita çakıştırma yöntemini uygulamışlardır • Bu ilk kez 1950’de planlama kitabında Jacqueline Tyrwhitt tarafından tanımlanmıştır • McHarg , yer seçimi için transparan haritaları çakıştırarak kullanmıştır

  35. Temel Bileşenler • Veri • Yazılım • Donanım • İnsan • Yönetim YÖNETİM

  36. Yazılım • CBS paket programı • ArcGIS, MapInfo, PostGIS vb, CAD yazılımlarının CBS modülleri • CBS paket programı ekleri: üç boyutlu analizler, mekansal analizler, şebeke analizi, internetten sunuş vb • Uygulama yazılımı • VTYS • İletişim ile ilgili yazılımlar

  37. Yazılım Veri Girişi Veri İşleme Sorgulama Coğrafi Analiz Veri Depolama Veri Yönetimi CBS YAZILIMI Sunuş İletişim

  38. Yazılım • Temel fonksiyonlar • ekranda sayısallaştırma vb veri girişi • farklı dosya formatlarını okuma ve dönüştürme • koordinat sistemi dönüşümü • sql sorgulamaları • istatistiksel işlemler • görselleştirme • arayüz, makro olanakları vb

  39. Bir veya birden çok katmanla yapılan işlemler, yeni oluşumlar • En kısa yol vb işlemler

  40. Yüzey oluşturma, enterpolasyon • çeşitli veri türlerinden TIN-üçgenleme ile yüzey oluşturma • çeşitli veri türlerinden, diğer enterpolasyon yöntemleri ile GRID oluşturma • “Multipatch” tarzı 3B poligon, çizgi veriler

  41. Yüzey verileri ile işlemler, sorgulamalar • eğim, bakı, gölgelendirme vb • görülebilirlik analizleri • istatistiksel işlemler • görüntü-yüzey kaplama • 3B modelleme

  42. Internet vb ağ uygulamaları • İstemci/sunucu mimarisi • verilerin bir veya daha çok sunucuda bulunması ve erişim • verilerin internette sunulması • verilere internette erişim

  43. Mobil uygulamalar • GPS, iletişim teknolojisi • bilgisayardan uzakta iletişim sistemleri ile veri toplama/güncelleme • araç takibi • navigasyon

  44. Donanım • Merkezi veya dağıtık yapı • LAN, WAN, Internet ağları veya tek bilgisayar • Yazıcı, çizicivb birimler

  45. İnsan • Sistem oluşturma ekibi • Yöneticiler • Operatörler ve diğer kullanıcılar

  46. Veri • Yeryüzeyinin üstünde, altında, üzerinde belli bir biçimi ve konumu olan somut veya soyut nesnelerin • koordinat • öznitelik-özellik • konumsal ilişki • zaman değerleridir • Diğer veriler; kişi vb

  47. Veri • Geometrik (Grafik) veriler • Vektör • Raster/Grid • Geometrik (Grafik) olmayan veriler • Geometrik veriler için tanımlayıcılar (öznitelikler) • Geometrik veri ile dolaylı ilgisi olan veya olmayan diğer veriler

  48. Binalar Yapı Adaları Caddeler Riskli bölgeler İlçeler İller Dünya 3.1. Vektör Veriler • Noktalar • Çizgiler • Poligonlar

More Related