Modül4-1 Veri Tabanına Giriş ve Temel Veri tabanı Kavramları

  • Published on
    03-Jan-2016

  • View
    59

  • Download
    0

Embed Size (px)

Transcript

  • ETM :

    VER TABANINA GR VE

    TEMEL VER TABANI

    KAVRAMLARI

    Blm :

    Veri Tabanna Giri

    Konu :

    Veri Tabanna Giri

  • 2/34

    Veri Nedir? Veri taban (Database) kavramna girmeden nce veriyi ksaca tanmlamak nemlidir. Veri, (data) bir

    veya birden fazla bilgiden oluan bir kmedir. sim, ya, telefon numaras, bir toplama ileminin sonucu ya da bir snfn ya ortalamas birer veridir. Bir veritaban yaps ierisinde tutulan bilgilere veri denilmektedir. Bilgisayar ortamna aktarlan, ilenmemi (ham) bilgiler de veri olarak adlandrlabilir. Bilgisayara girilen, bilgisayar tarafndan saklanabilen ve ilenebilen hereye veri denir.

    Veri Neden Saklanr? Veri saklamaktaki ana ama, daha ileri bir tarihte saklanan verilere yeniden ulaabilmek ve

    kullanabilmektir. Kullanma sreci sadece verinin listelenmesi gibi basit bir ilem olabilecei gibi, veriler zerinden hesaplamalar yaplarak raporlar hazrlanmas gibi daha karmak bir ilem de olabilir. imdi sra geldi veriyi nasl saklayabileceimizi renmeye.

    Veri Saklama Yntemleri Verileri saklamak iin eitli ortamlar tercih etmek mmkndr. Verilerin klasik yntem ile kalem

    kullanarak bir dosya kadna satr satr yazlmas da bir veri saklama yntemidir, bilgisayar zerinde notepad kullanarak metin tabanl basit bir dosyada depolanmas da bir veri saklama yntemidir. Daha dzenli ve detayl bir ekilde veri saklamamz salayacak yntemler arasnda, tablo yapsnda veri saklamamz salayan Excel ve Access gsterilebilir. Veri saklama ilemini bir rnek ile detaylandralm:

    Bakkal ve marketlerde veresiye sat yapldnda mterinin ald rnlerin ad, miktar, fiyat gibi bilgiler bir veresiye defteri ierisinde mteriye ait bir sayfada saklanr. Bu ekilde bakkaln sahibi, gerektiinde ilgili mterinin sayfasn ap hangi rnlerden ne kadar miktarda aldn ve bor toplamnn ne kadar olduunu hesaplayabilir. Fakat verinin bu ekilde saklanmas birok adan kt sonulara yol aabilir. Verilerin kttan yaplm bir defterde tutulmas dzensizliklere ve karklklara yol aabilecei gibi yrtlma, slanma, kaybolma gibi veri kaybna sebep olabilecek risklere de aktr. O zaman gelin biz bu defterdeki verileri bilgisayar ortamnda saklayalm. Bilgisayarmzda veresiye adnda bir klasr oluturalm. Bu klasr ierisine Notepad gibi bir metin editr ile her mterimiz iin bir metin dosyas aalm. Atmz dosyalarn adlarna, daha sonra kolay bir ekilde ulaabilmek iin bir numara verelim. (rnein Ahmet isimli mterimiz iin 302 numarasn verelim) Bu metin dosyasndan faydalanarak, defterde tuttuumuz verileri daha dzenli bir ekilde saklayabiliriz. Bu bilgileri dzenli bir ekilde kaydedip, yedekleyerek bamza gelebilecek veri kayplarn da en aza indirebiliriz.

    kinci senaryomuz, yani verileri bilgisayarda saklamamz ilk senaryodaki veresiye defterine gre elbette ki daha esnek, hzl ve salkl bir yntem olacaktr. Fakat bir metin dosyas zerinde girilen verilere mdahale etme ansmz pek olmayacaktr. rnein cret bilgisinin yazlaca alana 40, 40,5 veya krk gibi farkl tipte veriler girilebilir ya da cret ksm bo braklabilir. Bu ekilde kaydedilen bir dosyann daha sonra baz karklklara yol aabilme riski yksektir. Peki, bu bilgiler zerine yeni veri eklemek, istediimiz kstaslara gre veri semek, var olan veriyi deitirmek veya veriler zerinde ilemler yapmak istediimizde ok iyi sonulara ulaabilir miyiz? Elbette ki bu tip ilemleri metin dosyas zerinde yapmamz biraz olsun iimizi kolaylatracaktr. Fakat Daha iyi bir yol olabilir mi? diye dnecek olursak cevab kesinlikle Evet olacaktr.

  • 3/34

    ETM :

    VER TABANINA GR VE

    TEMEL VER TABANI

    KAVRAMLARI

    Blm :

    Veri Tabanna Giri

    Konu :

    Veri Taban Nedir?

  • 4/34

    Veri taban (Database) temel olarak farkl tiplerdeki verileri dzenli bir ekilde saklamamz ve kullanmamz salayan depolama ortamdr. Bu ortam ierisinde verileri saklayabilir, onlara kolay bir ekilde ulaabilir ve gerektiinde bu verilerin zerinde deiiklikler yapabiliriz. Veri taban, veriler arasnda btnlk ve dzen salarken, veriye hzl eriim ve bakm kolayl da sunar. Bu sistemin kullanlmas sonucu veriyi hatasz ve salkl bir biimde ilemek de kolaylar.

    Bir veri taban sistemi zerinde istediimiz verileri depolayabilir, depolanan verileri arrken baz

    artlar belirtebilir, verileri deitirebilir veya silebiliriz. lerleyen konularda reneceimiz T-SQL dili ile aadaki rnekleri ok basit bir ekilde gerekletirebileceiz:

    - Burak Batur isimli mterinin bor bilgisine 1,5 YTL fiyatyla 2 adet margarin ekle. - Burak Batur isimli mterinin satn ald tm rnlerin listesini getir. - Ercan Bozkurt isimli mterinin 1 Ocak 2011 ile 10 ubat 2011 tarihleri arasnda satn ald tm

    rnleri getir. - Ferda Demir isimli mterinin toplam bor bilgisini getir. - Tm mterilerin toplam bor bilgisini getir.

    Bu rnekleri geniletmemiz ve arttrmamz elbette mmkn. Fakat imdilik bu rnekler bir veri taban

    sistemi zerinde ne gibi ilemler yapabileceimizi grmemiz asndan yeterli bir temel tekil edecektir. Gnmzde veritabanlar hemen hemen her alanda sklkla kullanlmaktadr. Bu alanlara rnek verecek

    olursak;

    - Kiisel adres defterleri - Telefon rehberi - TV rehberi - Online szlkler - Ktphane sistemleri - deme ve bor sistemleri - rn sat ve sipari sistemleri - E-Ticaret siteleri - Banka sistemleri - Okul sistemleri - Hastane sistemleri

    gibi birok alanda gerekli bilgiler veritabanlarnda tutulmaktadr. rnein bir ktphaneden dn

    aldmz kitaplarla ilgili olarak, kitap ad, al tarihi, geri veri tarihi gibi bilgiler veri tabanndaki bir tabloda tutulmaktadr. Ktphanedeki grevli istedii zaman kaytl bir kullanc ile ilgili bilgilere ulaabilmektedir.

  • 5/34

    ETM :

    VER TABANINA GR VE

    TEMEL VER TABANI

    KAVRAMLARI

    Blm :

    Veri Tabanna Giri

    Konu :

    Veri Taban Ynetim

    Sistemleri

  • 6/34

    Veri Taban Ynetim Sistemleri (DataBase Management System - DBMS), veri tabannda tutulacak olan verilerin uyaca standartlar, bu verilere nasl eriilebileceini ve verilerin disk zerinde nasl tutulacan belirleyen sistemlerdir. Bu sistemler araclyla verilerin btnl ve gvenlii salanmaktadr. Programlarn veya sistemlerin veri taban ierisindeki verilere kolay ve hzl bir ekilde eriebilmesini ve verileri yedekleyebilmesini salamaktadr. Bu sistemler, birden fazla veri taban zerinde ilemler yapabilecek ekilde tasarlanmtr. Bunlarn yansra, olabilecek felaket senaryolar (disaster case) karsnda, veri tabannn sorunsuzca ileyebilmesi iin tedbirler almaktadr.

    likisel Veri Taban Ynetim Sistemleri Gelien bilgi teknolojileri ile birlikte, veri taban sistemlerinde de birok yenilikler olmutur. lk veri

    taban sistemlerinde veriler geliigzel bir ekilde depoland iin veriler zerinde deiiklikler yapmak zor bir ilemdi. Kullanclarn veriler zerinde deiiklik yapabilmesi iin veri tabannn yapsn iyi bilmesi gerekiyordu. Yine bu sistemler tam olarak veri btnln ve gvenliini salayamyordu. Gnmzde en yaygn olarak kullanlan veri taban mimarisi olan ilikisel veritabanlarnda ise veriler tablolar, satrlar ve alanlar halinde tutulmaktadr. Bu sayede veriler arasnda ilikilendirmeler yaplabilmekte, verilerin kullanm ve ynetimi daha verimli hale getirilmektedir. likisel veri taban mimarisini kullanan sistemlere ise likisel Veri Taban Ynetim Sistemi (Relational Database Management System - RDBMS) ad verilmektedir. Gnmzde en sk kullanlan ilikisel veri taban ynetim sistemleri arasnda Microsoft SQL Server , Oracle , Microsoft Access , PostgreSQL , Sybase , MySQL , Berkeley ve Firebird gsterebiliriz.

    Bir veri tabann doru bir biimde tasarlayabilmek iin varlklar arasndaki ilikileri (entity relationship)

    iyi ekilde kavramak gerekmektedir. Verileri gerek hayat ile ilikilendirip, aralarndaki balantlar oluturup, veri tabannn mantksal ablonu karlmaldr. SQL Server gibi bir RDBMS ile hazrlanan veri tabannda yer alacak veriler, tablolar ve alanlar (stunlar) ierisinde tutulur. Tablolara kaydedilecek olan verilerin kendilerine ait uygun veri tipleri belirlenip, girilecek olan deerler iin baz snrlandrmalar getirilebilir. Yine veriler arasnda ilikilendirmeler yapp, veri tabanna ilikisel bir yap kazandrlabilir. SQL (Structered Query Language) dili ile sorgular oluturarak RDBMS zerinden veri taban ile iletiim kurulabilir.

    Veri taban tasarlanrken, verilerin gerek dnyada aralarnda olan ilikilerini gz nne aldmzda,

    verileri ilikilendirmemiz daha da kolaylar. rnein bir niversite iin temel olarak faklteleri, blmleri ve rencileri ele aldmzda blm ile faklte arasnda ve renci ile blm arasnda baz ilikiler olacaktr. Alt birimden st birime doru bir sralama yaptmzda renci-blm-faklte gibi bir ilikilendirme ortaya kmaktadr. Byle bir senaryoda, veri taban tasarlanrken renci, blm ve faklte arasndaki ilikiler ele alnarak tablolar tasarlanabilir ve gerekli ilikilendirmeler yaplabilir. Aadaki ekilde renci, blm ve fakltenin ilevleri ve aralarndaki ilikilerin ekle dklm hali bulunmaktadr.

    Faklte, blm ve rencilerin ekil zerinde tanmlanmas

    ve ilikilendirilmesi

  • 7/34

    ETM :

    VER TABANINA GR VE

    TEMEL VER TABANI

    KAVRAMLARI

    Blm :

    Veri Tabanna Giri

    Konu :

    SQL Server Management

    Studio

  • 8/34

    SQL Server nereden indirilir? http://www.microsoft.com/download adresini taraycnda ap, arama kutusuna sql server 2008 r2

    express yazarak arama ilemini balattktan sonra, gelen sonular arasndan Microsoft SQL Server 2008 R2 RTM Express with Management Tools linkini takip ederek indirme sayfasna ulaabilirsin. Bu sayfada iletim sistemine uygun olan srm (32-bit veya 64-bit) indirebilirsin. Detaylarn anlatld videoyu izlemek iin aadaki simgeye tkla.

    SQL Server Kurulumu SQL Server kurulumu ile ilgili detaylar kurulum videomuzda bulabilirsin.

    SQL Server Management Studio Veri taban zerinde gerekletirilecek olan ilemleri, programlama dilleri araclyla yapabildiimiz

    gibi SQL Server Management Studio uygulamasyla da gerekletirebiliriz. SQL Server Management Studio, Microsoft SQL Server 2008 R2 RTM Express with Management Tools kurulumu srasnda makinana yklenecektir.

    SQL Server makinanda daha nceden kurulu ise ve sen sadece Management Studioyu indirmek

    istiyorsan; http://www.microsoft.com/download adresini taraycnda ap, arama kutusuna management studio express yazarak arama ilemini balattktan sonra, gelen sonular arasndan Microsoft SQL Server 2008 Management Studio Express linkini takip ederek indirme sayfasna ulaabilirsin. Bu sayfada iletim sistemine uygun olan srm (32-bit veya 64-bit) indirip kurabilirsin.

    SQL Server Management Studio zerinde Sorgularla almak SQL Server Management Studio, Microsoft SQL Server ile birlikte gelmi olan yeni bir sorgulama ve

    ynetim aracdr. Management Studio, SQL Server veritabanlarna erime, veritabanlar zerinde ayarlama ilemlerini gerekletirme, ynetim ve veri taban zerinde sorgular altrma gibi ilemleri yapabilmektedir. Yine Management Studio zerinde SQL Server projeleri oluturulup, almalarn Visual Studio ortamnda olduu gibi proje eklinde kaydedilip, daha sonra bu projeler zerinde gelitirme ilemleri yaplabilmesi salanmaktadr.

    SQL Server Management Studio ayn zamanda, veri taban zerinde T-SQL sorgularn altrmak,

    sonularn grmek, sorgular analiz etmek ve veri taban zerinde baz ayarlamalar yapmak iin de kullanlabilir. SQL Server Management Studio ile yapabilecein ilemler ve sunulan kolaylklardan bazlarn aada liste halinde bulabilirsin.

    - Veri taban ve tablolar zerinde yaplabilecek tm sorgu ilemlerinin gerekletirebilecei, kodlar

    renklendirilerek sorgularn daha anlalr olmasn salayan metin editrn kullanmak. - alan sorgularn sonularn grmek. - Hazrlanan sorgularn test edilmesi. Sorguda bir hata olmas durumunda hatann nerede olduunu ve

    neden kaynaklandn kolayca grebilmek. - Bal olunan veri taban zerindeki tablolar ve dier nesneleri arayz zerinden grebilmek. (Object

    Browser aracl ile) - Birok SQL sorgusunun hazr olarak bulunduu ablonlar (template) kullanmak. Bu ablonlar

    yardmyla kolay bir ekilde sorgular hazrlayabilmek.

  • 9/34

    SQL Server Management Studio, Microsoft tarafndan SMO (SQL Server Management Object)

    ktphanesinden yararlanlarak Visual Studio ile .NET Framework kullanlarak gelitirilmitir.

    SQL Server Management Studioyu amak iin Trke iletim sistemlerinde Balat > Programlar >

    Microsoft SQL Server mensnden SQL Server Management Studio uygulamasn balatmalsn. Management Studio aldnda karmza ilk olarak bir SQL Server sunucusuna ulamamz iin bir

    balant penceresi gelecektir. Bu pencereden Server Type, Server Name ve Authentication seeneklerinden balanacamz sunucunun zelliklerine gre uygun seenekleri girerek balant yapabiliriz. Kendi bilgisayarmzdaki SQL Server sunucusuna balanmak istediimizde, Server Name ksmnda makina admz ve bilgisayarmzda kaytl olan SQL Servern ismini (instance name) yazmamz gerekir. Uzak bir bilgisayar zerindeki SQL Server sunucusuna balanmak iin ise Server Name ksmna balanlacak bilgisayarn IP numaras veya uzak sunucudaki SQL Servern alan ad (domain name) yazlr. Windows zerinde o an giri yapm olan kullancnn hesab ile balant yapmak iin Windows Authentication seeneini sememiz yeterli olacaktr. Balanlacak SQL Server zerindeki bir kullanc ile giri yapmak iin ise SQL Server Authentication seip sunucuya balanma yetkisi olan kullanc ad ve ifreyi girmemiz gerekecektir. Connect butonuna tkladmzda girilen bilgiler doru ise SQL Server sunucusuna balanlacaktr.

    SQL Server Management Studio balant ekran

    Management Studio ile bir SQL Server sunucusuna balandmzda karmza gelen arayzde Object

    Explorer, Template Explorer ve Object Explorer Details pencereleri yer alabilmektedir. (Bu pencerelerden herhangi biri ak deilse, View mensnden alp tekrar kapatlabilir.)

  • 10/34

    SQL Server Management Studio genel grnm

    Object Explorer: Bal bulunan SQL Server sunucusu zerinde bulunan tm nesneleri (veritabanlar,

    tablolar, kullanclar vb.) aa yaps biiminde grntlememizi ve bu yaplarn ierisinde gezinmemizi salar. Yine Object Explorer zerinden yeni veri taban oluturma, tablo ekleme, varolan nesneleri silme gibi ilemler yaplabilmektedir. Grntlenen nesneler zerinde filtreleme ilemleri yaplabilmektedir. Management Studio ile birden fazla SQL Server sunucusuna balanabilir, bal bulunduun tm sunucular Object Explorer penceresi ierisinde grntleyebilir ve zerlerinde ilemler yapabilirsin. Object Explorer zerinde yapabilecein baz temel ilemler unlardr:

    - Yeni bir SQL Server sunucusuna balanmak iin Object Explorer penceresinin sol st kesinde yer alan

    Connect butonu aracl ile ayn anda birden fazla SQL Server sunucusuna balanlabilir. - Bal olduun SQL Serverda sorgu altrmak iin, sunucu adnn zerine sa tklayp New Query

    seenei seilir. - Bir veritaban zerinde sorgu altrmak iin o veritabannn zerine sa tklayp New Query seenei

    seilir. - Veritabanna yeni bir tablo eklemek iin veritaban iindeki Tables ksmnda sa tklayarak New Table

    seenei seilir. - Bir tablonun yapsn incelemek ve deiiklikler yapmak iin tablo zerine sa tklayp Design seene...