7. Hafta VERİ TABANI YÖNETİM SİSTEMLERİ

Benzer belgeler
VERİ TABANI YÖNETİM SİSTEMLERİ

Veri Tabanı Örnekleri

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

VERİ TABANI YÖNETİM SİSTEMLERİ

Bölüm 1: Veritabanı Yönetim Sistemlerine Giriş

1 Temel Kavramlar. Veritabanı 1

Veritabanı Uygulamaları Tasarımı

VERİ TABANI YÖNETİM SİSTEMLERİ. Öğr. Gör. Selçuk Özkan

İngilizce'de Relational Database Management System (RDBMS) olarak ifade edilir.

2 Temel Kavramlar (Devam) Veritabanı 1

Veri Tabanı-I 1.Hafta

VERİ TABANI UYGULAMALARI

BIM 312 Database Management Systems. Veritabanı Kavramına Giriş

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

VERİTABANI VERİTABANIN AVANTAJLARI ÖZET

3 Sql Veri Tipleri. Veritabanı 1

ELIF KIOTZEOGLOU RESUL MURAD MERT PACOLARI

1-Veritabanı Yönetim Sistemleri /Tanım

3 Sql Veri Tipleri ve Örnek Veritabanı Tasarımı. Veritabanı 1

10-Veri Tabanları.

VERİ TABANI YÖNETİM SİSTEMLERİ-II

Bilgisayar Mühendisliğine Giriş. Yrd.Doç.Dr.Hacer KARACAN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

HASTANE OTOMASYONU VERİ TABANI YÖNETİM SİSTEMLERİ TEMEL VERİTABANI KAVRAMLARI

Veri Tabanı-I 1.Hafta

UZAKTAN EĞİTİM MERKEZİ

2-Veritabanı Yönetim Sistemleri/ Temel Kavramlar

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

SQL e Giriş. Uzm. Murat YAZICI

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veritabanı Sistemleri

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

Oracle da kullanılan veri tipleri:

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

VERİTABANI & VERİTABANI YÖNETİMİ

SORGULAR VE ÇEŞİTLERİ II

Veri Tabanı Hafta Dersi

VERİ TABANI ve YÖNETİMİ

=A1+A2-A3, =A1*A2/A3,

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

VERİ TABANI YÖNETİM SİSTEMLERİ

Veritabanı Yönetimi Bilgisayarların. Keşfi Hedefler. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi. Veritabanı, Veri ve Bilgi

1 Temel Kavramlar. Veritabanı 1

KISITLAMALAR (CONSTRAINT)

MICROSOFT ACCESS DERS NOTLARI

Veri Tabanı Tasarım ve Yönetimi

İLİŞKİSEL VERİTABANLARI

VERİTABANI ORGANİZASYONU

VERİTABANI Veritabanı Yönetimi

Coğrafi Bilgi Sistemlerine Giriş. Ünite 5 - Veri Tabanı Yönetim Sistemleri

SQL (Structured Query Language)

Ders Tanıtım Sunumu. Database Managegement II. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

İlişkisel Veri Tabanları I

Veritabanı. Ders 2 VERİTABANI

Veritabanı ve Yönetim Sistemleri

Durhan GABRALI Veritabanı Organizasyonu Dersi (11B)

Bölüm 4: DDL Veri Tanımlama Dili

VERĐTABANLARINA GĐRĐŞ

Veri Tabanı Tasarım ve Yönetimi

VERİTABANI. SQL (Structured Query Language)

Veri Tabanı-I 5.Hafta

Dosya Organizasyonu ve Veritabanı

Database Management System

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

Veritabanı Yönetim Sistemleri, 2. basım Zehra ALAKOÇ BURMA, 2009, Seçkin Yayıncılık

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

VERİ TABANI YÖNETİM SİSTEMLERİ I

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

Veri Tabanı Yönetim Sistemleri Bölüm - 3

Tekrar. Veritabanı 2

İNTERNET PROGRAMLAMA 2 A S P. N E T. Marmara Teknik Bilimler MYO / Hafta 5 Veri Tabanı İşlemleri

Veri Tabanı Hafta Dersi

BİL Bilişim Teknolojileri. Access

08118 Veri Tabanı I. Database Management System. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

VERİ TABANI SİSTEMLERİ

08118 Veri Tabanı I. Database Management System. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. Öğr.Gör. Murat KEÇECĠOĞLU

İşletim Sistemi. İşletim Sistemi

VERİTABANI YÖNETİMİ. İlişkisel Veritabanı 4.HAFTA. Veritabanı Yönetimi Prof. Dr. İbrahim Çil

Veritabanına Giriş. Oğuzhan Ceylan. 19 Eylül 2011

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model)

MİRSİS BİLGİ TEKNOLOJİLERİ LTD. ŞTİ. MİCROSOFT SQL SERVER VERİTABANI VE SORGULARI

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

Swing ve JDBC ile Database Erişimi

İnternet Programcılığı

Veri Tabanı Programlamaya Giriş

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

Pursaklar İMKB Teknik ve Endüstri Meslek Lisesi

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

MSSQL. 4. Hafta Uygulama - 1 BPR255 Veritabanı CREATE DATABASE OKUL GO USE OKUL GO

VERİ TABANI YÖNETİM SİSTEMLERİ-II

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

VERİ TABANI I. Yrd.Doç.Dr. İlker ÜNAL. Teknik Bilimler Meslek Yüksekokulu

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

VERİ TABANI YÖNETİM SİSTEMLERİ I

İNTERNET PROGRAMCILIĞI HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme

Transkript:

BARTIN ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 7. Hafta VERİ TABANI YÖNETİM SİSTEMLERİ Dr. Öğr. Üyesi Nesibe YALÇIN https://nesibeyalcin.wordpress.com/bsm102/

Veri Tabanı 2

Birbiriyle ilişkisi olan verilerin tutulduğu, Kullanım amacına uygun olarak düzenlenmiş veriler topluluğunun, Mantıksal ve fiziksel olarak tanımlarının bulunduğu Bilgi depolarıdır. Veri Tabanı Veri tabanı kavramı ilk olarak 1980 li yıllar 3

Neden Veri Tabanı?? 4

Neden Veri Tabanı?? Verilerin tutulması, saklanması ve erişilmesinde geleneksel yaklaşım (dosya/liste yönetimi) verilerin ayrı ayrı dosyalarda gruplanması yaklaşımını kullanmaktadır. Sıralı, Rastgele erişimli dosya Verilerin artması, verilere aynı anda erişme ve düzenlenme ihtiyacı ile geleneksel yaklaşım yetersiz kalmıştır. Veri tekrarını önler. Verilerin tutarlı olmasını sağlar. 5

Avantajları Ortak verilerin tekrarının önlenmesi Verilerin merkezi denetiminin ve tutarlılığının sağlanması Veri paylaşımının sağlanması Her kullanıcıya yalnız ilgilendiği verilerin, alışık olduğu kolay, anlaşılır yapılarda sunulması 6

Avantajları Sunulan çözümleme, tasarım ve geliştirme araçları ile uygulama yazılımı geliştirmenin kolaylaşması Veri bütünlüğünün sağlanması Güvenlik ve gizliliğin istenilen düzeyde sağlanması Yedekleme, yeniden başlatma, onarma gibi işletim sorunlarına çözüm getirilmesi 7

Veri Tabanı Örnekleri Basit bir web uygulamasından uluslararası kuruluşların büyük ve karışık verilerine kadar pek çok alanda veri tabanı uygulamalarına ihtiyaç durulmaktadır. Üniversite Öğrenci işleri bilgi sistemi Hastane Hasta, doktor, tedavi, araç-gereç, mali bilgiler Ticari bir şirket Müşteri, ürün, satış, ödeme, teslimat bilgileri Banka Müşteri, mevduat, kredi kartı, kredi bilgileri 8

Veri Tabanı Yapısı Tablo Kayıt Nitelik Anahtar nitelik Veri tabanı Tablo Tablo Tablo Tablo Tablo 1 2 3 Alan 1 Alan 2 Alan3 Alan4 9

Tablo Veriler tablolarda saklanmaktadır. Tablolar verilerin satırlar ve sütunlar halinde düzenlenmesiyle oluşan veri grubudur. Satır ve sütunlar farklı işleve sahiptir: Sütunların her birinde bir özellik/alan bilgisi yer alır. Satırlarda ise sütunlara ait kayıt bilgileri saklanmaktadır. Tablolardaki veriler sorgu sonucunda seçilir ve belli bir düzen içinde sunulur. 10

Tablo - Örnek Öğrenci bilgilerini veritabanında saklamak için: ogrenci_bilgileri Öğrenci bilgileri tablosunda: Öğrenci numarası, adı soyadı, doğum tarihi, doğum yeri, e-mail adresi bilgileri yer alsın. 11

Tablo - Örnek Alan Ogr_no Ad_soyad d_tarih d_yeri e-mail 1 Atiye Aydın 01.11.1999 Konya atiye@ogr.bartin.edu.tr 2 Asya Özdemir 05.12.1999 Giresun asya@ogr.bartin.edu.tr Alan 3 Sedat Pekin 16.02.2000 Ardahan sedat@ogr.bartin.edu.tr 4 Metin Ertürk 11.04.1998 Ankara metin_e@ogr.bartin.edu.tr 5 Zeynep Nur Aker 02.01.2000 Malatya zeynepn@ogr.bartin.edu.tr 6 Resmiye Bahar 22.02.2001 Yozgat resmiye@ogr.bartin.edu.tr Kayıt 12

Anahtar (Key) Anahtar bir veya birden fazla alanın bir satır için niteleyici olarak girilmesi için zorlanan bir çeşit zorlayıcıdır. 2 çeşit anahtar vardır: Birincil Anahtar (Primary Key) Yabancı Anahtar (Foreign Key) 13

Birincil Anahtar (Primary Key) Bir kayıta ulaşmayı sağlayacak anahtar veridir. Örneğin, öğrenciler arasında iki Ahmet var. Arama yaparken istediğimiz Ahmet i bulmak için her bir öğrenciye özel bir numara olmalıdır: öğrenci numarası Birden fazla alanda birlikte birincil anahtar olabilir. 14

Yabancı Anahtar (Foreign Key) Bir tabloya girilebilecek kayıtları başka bir tablonun belli alanındaki verilerle sınırlandırmaya ve ilişkilendirmeye yarar. Örneğin, öğrencilerin not verilerinin girildikleri tablodaki her satıra öğrenci bilgileri tablosundaki öğrenci no ile eşleşmeyen bir değer girilmez gibi. 15

Birleşik Anahtar (Composite Key) Birden fazla alanın birleşmesi ile oluşan anahtar nitelik Örneğin, öğrencilerin not verilerinin girildikleri notlar tablosunda her bir öğrenciye ilişkin birincil olarak tanımlanabilecek öğrenci no ve dersno alanları birlikte anahtar nitelik olabilir. 16

Veri Tabanı Yönetim Sistemleri (VTYS) 17

Veri Tabanı Yönetim Sistemleri (VTYS) Yeni bir veri tabanı oluşturmak, Veri tabanını düzenlemek, Kullanmak, Geliştirmek, Bakımını yapmak için Çeşitli karmaşık işlemlerin gerçekleştirildiği bir yazılım paketi ya da sistemidir. 18

Veri Tabanı Yönetim Sistemleri (VTYS) 19

Access Microsoft Office ürünüdür. Küçük ölçekli uygulamalar içindir. Tablo başına 2 GB a kadar veri depolayabilir. Aynı anda 255 bağlantıya izin verebilir. Windows işletim sistemleri dışında kullanılamaz. 20

MySQL Açık kaynak kodludur. Windows/Unix/Linux, işletim sistemlerinde çalışır. (platform bağımsız) Tablo başına 4 TB veri depolayabilir. Web uygulamalarında PHP ile çok sık kullanılır. 21

IBM tarafından geliştirilmiştir. IBM DB2 Windows/Unix/Linux, işletim sistemlerinde çalışır. Transaction logging, trigger ve stored procedure özelliklerine sahiptir. 22

Informix Illustra firması tarafından geliştirildi. 2001 yılında IBM Informix i satın aldı. Ücretli ve güçlü bir veritabanı. Orta ölçekli işletmelerin yükünü kaldırabilecek kapasitedir. 23

Bir orta ve büyük ölçekli VTYS dir. Unix, Windows,.. işletim sistemlerinde çalışır. SAP ile uyumlu. Sybase Ülkemizde daha çok bankacılık ve kamusal alanlarda tercih edilmektedir. 24

SQL Server Microsoft firmasına ait veritabanı sunucu yazılımıdır. Orta ve büyük ölçekli işlemler için kullanılır. Kullanım kolaylığı, güvenilirliği, işlem gücü Tablo başına 4 TB veri depolama. Sadece Windows üzerinde çalışır (platform bağımlı). Transaction logging, trigger ve stored procedure özelliklerine sahip. 25

Oracle Oracle firması tarafından geliştirildi. Dünyanın en güçlü ve en güvenilir veritabanı olarak gösterilir. Birçok işletim sistemi üzerinde kullanılabilir. Çok yüksek ölçekli uygulamalar için tercih edilir. Oluşturulabilecek tablo sayısı sınırsızdır. Çok yüksek maliyet..! 26

VTYS Bileşenleri 27

Veri Türleri Veri tabanında tutulan kayıtların yapısı hakkında bilgi sahibi olmak için alanların bazı özelliklerinin önceden tanımlanması gerekir. Örneğin; personel sicil numarası mutlaka tam sayı, Adı soyadı harflerden oluşması gibi Özellikle çok fazla verinin tutulduğu veritabanlarında performans kaybını azaltmak, veritabanı ve yedeklerin kapladığı disk alanını en aza indirmek için veri tipleri dikkatle seçilmelidir. 28

MsSQL Veri Türleri char: Sabit uzunlukta karakter verisi saklamak için kullanılır. En fazla 8000 karakter veri saklayabilir. varchar: Değişken uzunlukta karakter verisi saklamak için kullanılır. Belirlenmiş veri kapasitesi 8000 karakter olmasına rağmen (max) parametresi ile bu değer 2^31 byte a kadar genişletilebilir. nchar: Sabit uzunlukta 4000 karakter verisi saklamak için kullanılır. Boyutu değişken olmakla birlikte kısa olan değerler atanan uzunluğa tamamlanır. nvarchar: Değişken uzunlukta karakter verisi saklamak için kullanılır. Belirlenmiş maksimum uzunluk 4000 karakter olmasına rağmen (max) parametresiyle 2^31 byte a kadar veri depolanabilir. 29

MsSQL Veri Türleri int: 4 byte büyüklüğünde yaklaşık -2 milyar ile +2 milyar arasında değer alabilen tamsayı veri tipidir. bigint: 8 byte yüyüklüğünde -2^63 ile +2^63 arasında değer alabilen tamsayı veri tipidir. float: Boyutu ve doğruluğu (ondalık kısım duyarlılığı) aldığı parametreye göre değişen kayan noktalı sayılar için kullanılır. smallmoney: 4 byte uzunluğunda yaklaşık -214 000 ile 214 000 arasında parasal değerleri tutmak için kullanılır. Ondalık kısım duyarlılığı 4 basamaktır. money: 8 byte uzunluğunda yaklaşık -922 milyar ile 922 milyar arasındaki parasal değerleri tutmak için kullanılır. Ondalık kısım duyarlılığı 4 basamaktır. 30

MsSQL Veri Türleri date: Tarihleri YYYY-MM-DD şeklinde saklayan 3 byte uzunluğunda veri tipidir. smalldatetime: Tarih ve zaman verilerini YYYY-MM-DD hh:mm:ss şeklinde saklayan 4 byte uzunluğunda veri tipidir. datetime: YYYY-MM-DD hh:mm:ss:mmm şeklinde tarih ve zaman verilerini tutan 8 byte uzunluğunda veri tipidir. time: Sadece saat verilerini hh:mm:ss:nnnnnnn şeklinde saklayan veri tipidir. Dateteime2 gibi salise hassasiyeti maksimum 7 basamaktır ve kullanıcı tarafından değiştirilebilir. (3-5 byte) datetimeoffset: Ülkelere göre değişen zaman farkını tutmak için kullanılır. 31

MsSQL Veri Türleri binary: Maksimum 8000 byte boyutunda, sabit uzunlukta binary veri saklamak için kullanılır. varbinary: Değişken uzunlukta 8000 byte boyutunda binary değer saklamak için kullanılır. (max) parametresiyle tutacağı maksimum değer 2^31 byte a kadar yükseltilebilir. image: Önceki sql versiyonlarını desteklemek amacıyla kullanılmaktadır. Bu tip yerine varbinary (max) veri tipi tercih edilmelidir. xml: XML türünde hiyerarşik verileri saklamak için kullanılır. Bellekteki boyutu saklanan xml verisine göre değişir. 32

VTYS Yöneticisi (Admin) Sistem mühendisleri Tasarımcı (Designer) Uygulama yazılımcısı Son kullanıcılar VTYS Aktörleri 33

VTYS nin Sınıflandırılması Kullanıcı sayısına göre Tek kullanıcılı Çok kullanıcılı Fiziksel konumuna göre Merkezi Dağıtık Veri modeline göre Düz-dosya Hiyerarşik Ağ İlişkisel Nesneye Yönelik 34

Düz-Dosya Veri Tabanları Tek tablodan oluşan veritabanıdır. Tüm veriler bu tablo üzerinde tutulur. Tek bir tablo olduğu için 1 dosya içinde barındırılır. Tüm veriler tek tabloda tutulduğu için tutulacak veriye göre hem sütun sayısı çok fazla olur hem de aynı veriyi birçok kayıtta tekrar etmek (data duplication) gerekecektir. Bu sebeple veri boyutu çok fazla olabilir. Word, Excel bu tür programlara örnektir. 35

Hiyerarşik Veri Tabanları 1960 lar ve 1970 ler - Veri tabanları için kullanılan ilk modeldir. IBM IMS (Information Management System) Hiyerarşik veritabanları bilgileri bir ağaç yağısında saklarlar. 36

Hiyerarşik Veri Tabanları 37

Ağ Veri Tabanları Hiyerarşik veritabanları yetersiz kalınca 1960 ların sonunda verilerin ağaçların daha gelişmiş hali olan graflar şeklinde saklandığı yapı ortaya çıkmıştır. 38

İlişkisel Veri Tabanları 1970 li yıllarda IBM tarafından geliştirilmeye başlanmıştır. Edgar Frank Codd tarafından önerilmiştir. Veriler tablo şeklinde saklanır, birçok tablo kullanılır ve tablolar arasında ilişkiler oluşturulur. Bir ilişki, bir tabloya, başka bir tablodaki kaydı bağlamamızı sağlar. Bu şekilde veriler daha az yer kaplar ve işlemlerimizi kolaylaştırır. Günümüzdeki hemen hemen tüm veri tabanı programları bu yapıdadır. 39

İlişkisel Veri Tabanları 40

Nesneye Yönelik Veri Tabanları 1990 lar Veriler nesne olarak modellenir ve oluşturulur. Nesneye yönelik veritabanı C++ gibi nesneye yönelik bir dille oluşturulan ve yine bu tarz bir dille kullanılan veri tabanı anlamına gelir. Günümüzde hem ilişkisel hem de nesneye-yönelik yaklaşımı birlikte kullanan VTYS nin yaygınlaştığı görülmektedir (ORDBMS). 41

Veri Tabanı Tasarlama 1. Nesneler tanımlanır: Kütüphane sistemi: kitap, üyeler, türler, ödünç alma işlemleri 2. Her nesne için bir tablo oluşturulur: kitap uyeler turler odunc_islemleri 42

Veri Tabanı Tasarlama 3. Her tablo için bir anahtar alan seçilir: Kitap tablosu: kitapno Üyeler tablosu: uyeno Türler tablosu: turno Ödünç İşlemleri tablosu: oduncno 43

Veri Tabanı Tasarlama 4. Nesnelerin her bir özelliği için tabloya sütun eklenir: Kitap tablosu: kitapno, ad, yil, yazar, ad, tur Üyeler tablosu: uyeno, adsoyad, dogumtarihi, eposta,tel Türler tablosu: turno, turadi Ödünç İşlemleri tablosu: oduncno, uyeno, kitapno, odunctarih, teslimtarih Kitap tablosu kitapno ad yil yazar tur 44

Veri Tabanı Tasarlama 5. Tablolar arasındaki ilişkiler tanımlanmalıdır. Örneğin; Üyeler tablosundaki uyeno - Ödünç İşlemleri tablosundaki uyeno Kitap tablosu: kitapno - Ödünç İşlemleri tablosundaki kitapno Türler tablosu turno ile Kitap tablosundaki tur 45

Structured Query Language - SQL (Yapısal Sorgu Dili) IBM, bir ilişkisel veritabanı yönetim sistemi geliştirmek amacıyla System/R adlı bir proje başlatır. Bu sistem için SEQUEL (Structured English Query Language) adında bir sorgu dili geliştirilmeye başlanmıştır. 1979 da tamamlanan bu proje sırasında geliştirilen dilin adı SQL (Structured Query Language) olarak değiştirilmiştir. 46

SQL Örnek SQL dilinde oluşturulmuş bir sorgu örneği; SELECT ADI, SOYADI, ADRES FROM PERSONEL WHERE BOLUMNO = 17 AND GOREV = 'Sekreter *** 17 numaralı bölümde çalışan sekreterlerin ad, soyad ve adres bilgilerinin istendiği sorgu 47

SQL Örnek SQL dilinde veri tabanındaki bir tabloya kayıt ekleme ve silme için oluşturulmuş sorgu örnekleri; INSERT INTO PERSONEL (ADI, SOYADI, ADRES, GOREV, BOLUMNO) VALUES ( Mustafa, KARA, Manisa, Müdür,18) DELETE PERSONEL WHERE ADI= Sare 48