SlideShare uma empresa Scribd logo
1 de 29
Iletisim Icin :

Blog : www.sevdanurgenc.com
E - Mail : sevdanurgenc@sevdanurgenc.com
       nanonungunlugu@gmail.com
Veri Nedir ?

•Veri (Data) bir veya birden fazla bilgiden oluşan bir kümedir.
•Bilgisayara girilen, bilgisayar tarafından saklanabilen ve işlenebilen herşeye veri
denir.

Veri Neden Saklanir ?

•Veri saklamaktaki ana amaç, daha ileri bir tarihte saklanan verilere yeniden
ulaşabilmek ve kullanabilmektir.

Veri Saklama Yontemleri Nelerdir ?

•Bilgisayar üzerinde notepad kullanarak metin tabanlı basit bir dosyada
depolanması da gorunuste bir veri saklama yöntemidir diyebiliriz.
•Tablo yapısında veri saklamamızı sağlayan Microsoft’un sunmus oldugu
cozumlerde Excel ve Access gibi arayuz uygulamalari ornek gösterilebilir. Veya
bunlara benzer sekilde OpenOffice’in biz kullanicilara sunmus oldugu Calc veya
Base arayuz uygulamalarida veri saklamak icin ornek verileribilir.
•Peki daha buyuk verilerde neler yapmamiz, neyi nerede kullanmamiz gerekiyor.
Asil onemli sorun bu!
Veri Tabani Kavrami
•Veri tabanı (Database) temel olarak farklı tiplerdeki verileri düzenli bir şekilde
saklamamızı ve kullanmamızı sağlayan depolama ortamıdır. Ve bu ortamlari
kullanarak veriyi hatasız ve sağlıklı bir biçimde işlemek de islerimizi
kolaylaştiracaktir. Bir veri tabanı sistemi üzerinde istediğimiz verileri depolayabilir,
depolanan verileri çağırırken bazı şartlar belirtebilir, verileri değiştirebilir veya
silebiliriz.

•Günümüzde veritabanları hemen hemen her alanda sıklıkla kullanılmaktadır. Bu
alanlara örnek verecek olursak;

- Kişisel adres defterleri
- Telefon rehberi
- Online sözlükler
-Kütüphane sistemler
- Ödeme ve borç sistemleri
- Ürün satış ve sipariş sistemleri
- E-Ticaret siteleri
- Banka sistemleri
- Okul sistemleri
- Hastane sistemleri
Veri Tabani Yonetim Sistemleri
DataBase Management System - DBMS)

•Veri tabanında tutulacak olan verilerin uyacağı standartları, bu verilere nasıl
erişilebileceğini ve verilerin disk üzerinde nasıl tutulacağını belirleyen sistemlerdir.

İlişkisel Veri Tabanı Yönetim Sistemi
Relational Database Management System – RDBMS

•Veri tabanı mimarisi olan ilişkisel veritabanlarında veriler tablolar,
satırlar ve alanlar halinde tutulmaktadır. Bu sayede veriler arasında
ilişkilendirmeler yapılabilmekte, verilerin kullanımı ve yönetimi daha
verimli hale getirilmektedir. İlişkisel veri tabanı mimarisini kullanan
sistemlere de İlişkisel Veri Tabanı Yönetim Sistemi adı verilmektedir.
•Günümüzde en sık kullanılan ilişkisel veri tabanı yönetim sistemleri
arasında MySQL, Microsoft SQL Server , Oracle , Microsoft Access , ve
PostgreSQL gösterebiliriz.
SQL (Structered Query Language)
Yapılandırılmış Sorgulama Dili

•Butun ilişkisel veritabanlarında standart olarak kullanılan bir dildir.
•SQL veritabanı ile kullanıcı arasındaki iletişimi sağlar.
•Hazırladığıniz sorguları kullanarak veritabanında depolanan veriler üzerinde
bütün işlemleri yapabilirsiniz.

T-SQL (Transact SQL)
•Transact SQL adı verilen bir SQL dilidir.
•Daha iyi performans sağlaması için SQL dili üzerine eklentiler ve fonksiyonellikler
eklenerek oluşturulmuş bir dildir.

T-SQL İfade Tipleri

T-SQL içerisinde 3 farklı ifade tipi bulunmaktadır.
•Veri Tanımlama Dili (Data Definition Language - DDL)
•Veri Kontrol Dili (Data Control Language - DCL)
•Veri İşleme Dili (Data Manipulation Language - DML)
Veri Tanımlama Dili (Data Definition Language - DDL)

•Veri tabanında nesneler oluşturmak için gerekli olan ifadeleri sağlamaktadır. Bu
ifadeler, veri tabanı veya tablo gibi yeni bir nesnenin oluşturulması, var olan
nesne üzerinde değişiklikler yapılması veya nesnenin yok edilmesi için
kullanılır.

•Üzerinde işlem yapılan nesnenin ne gibi özellikleri ve alanları olacağı bu ifadeler
içerisinde belirlenir.

•T-SQL dilinde 3 adet veri tanımlama ifadesi bulunmaktadır.
Bunlar:

•CREATE
•ALTER
•DROP
CREATE

•Veri tabanı üzerinde nesne oluşturmak ya da tanımlamak için kullanılan komuttur.
Oluşturulacak nesnenin özelliklerine göre farklı parametreler alabilmektedir.

•Genel kullanımı şu şekilde olmaktadır:

•CREATE NESNETİPİ Nesne Adı (Nesneye ait gerekli tanımlamalar)

CREATE DATABASE Poliklinik
ON
(
Name = Poliklinik,
FILENAME = 'C:Poliklinik.MDF',
SIZE = 2mb,
MAXSIZE = 5mb,
FILEGROWTH = 1mb
)

Veya

CREATE DATABASE Poliklinik
ALTER
•Varolan bir nesne üzerinde değişiklikler yapmak için kullanılır. CREATE
komutunda olduğu gibi değiştireceği nesneye göre farklı parametreler
alabilmektedir.

•Genel kullanımı aşağıdaki gibidir.

•ALTER NESNETIPI Nesne Adı Yapılacak Değişiklik


ALTER TABLE Doktorlar
ADD Yas Char(2) NOT NULL
DROP
•Veri tabanındaki herhangi bir nesneyi silmek için kullanılır. Silinen nesne ile ilgili
olarak içerisinde tuttuğu tüm bilgiler de silinmektedir. Örneğin bir tablo
silindiğinde içerisindeki tüm bilgiler de veri tabanından silinecektir. Kullanımında
dikkat edilmesi gereken bir sorgu ifadesidir.

•Genel kullanımı aşağıdaki gibidir.

•DROP NESNETIPI Nesne Adı

DROP DATABASE Poliklinik
Veri Kontrol Dili (Data Control Language - DCL)
•T-SQL’de veri kontrol ifadeleri veri tabanı üzerindeki kullanıcılara ve rollere yetki
vermek için kullanılmaktadır.

•T-SQL’de 3 adet veri kontrol komutu bulunmaktadır.

•Bu komutlar şunlardır:

•GRANT
Kullanıcıya veritabanına erişebilmesini veya T-SQL ifadeleri çalıştırabilmesini
sağlayacak yetkileri verir.

•DENY
Kullanıcının belirli bir alana erişimini engellemek veya belirli T-SQL ifadelerini
çalıştıramamasını sağlamak amacıyla kullanılır.

•REVOKE
Daha önceden GRANT veya DENY ile verilmiş yetki veya engelleri kaldırmak için
kullanılır.
Veri İşleme Dili (Data Manipulation Language - DML)
•Veri işleme ifadeleri, veri tabanı üzerinde depolanan veriler üzerinde yapılması
gereken işlemler için kullanılan ifadelerdir.

• Veri seçme/getirme, veri ekleme, veri güncelleme ve veri silme gibi işlemlerin
yapılmasını sağlarlar.

•Toplam 4 adet veri işleme ifadesi bulunmaktadır.
•INSERT
•SELECT
•UPDATE
•DELETE
INSERT
•Bir tablo içerisine yeni bir veri eklemek için kullanılır.

•Genel kullanımı aşağıdaki gibidir.

INSERT INTO TabloAdı (VeriEklenecekAlan1, VeriEklenecekAlan2, ...)
VALUES (EklenecekDeğer1, EklenecekDeğer2, ...)

•Örnek :

Doktorlar tablosuna, Doktor Id’si 1 olan 37 yasindaki ismi Muzazzez Sevim
uzmanligi olan Noroloji poliklinigini aşağıdaki sql ifadesi yardımıyla ekleyebiliriz.

INSERT INTO Doktorlar (DoktorId, AdSoyad, Brans, Poliklinik, Yas)
VALUES (1, 'Muazzez Sevim', 'Uzman', 'Noroloji', 37)
SELECT
•Bir tablo içerisindeki verilerin tamamını getirir veya belirli şartlara göre bir
kısmını filtreleyerek seçme işlemlerini gerçekleştirir.

•Genel kullanım şekli aşağıdaki gibidir.

SELECT SeçilecekAlan1, SeçilecekAlan2 … FROM TabloAdı

•Örnek :

Doktorlar tablosundaki tüm kayıtların OgrenciID, AdSoyad, Brans ve Poliklinik
bilgileri aşağıdaki sql ifadesi ile elde edilebilir.

SELECT DoktorID, AdSoyad, Brans, Poliklinik
FROM Doktorlar
UPDATE
•Bir tablo içerisinde bulunan verilerin değiştirilmesi için kullanılır.

•Genel kullanımı aşağıdaki gibidir

UPDATE TabloAdı
Set GuncellenecekAlan1 = YeniVeri1,
GuncellenecekAlan2 = YeniVeri2
WHERE Koşul veya koşullar

•Örnek :

Doktorlar tablosundaki tüm kayıtların icerisindeki Doktor Id’si 1 olan doktorun
Bransini Uzman Hk ve Yasinida 40 olarak guncelleyebilecegimiz,
değiştirebilecegimiz aşağıdaki sql ifadesinden yararlanılabiliriz.

UPDATE Doktorlar
SET Brans = 'Uzman Hk', Yas = 40
WHERE DoktorId = 1
DELETE
•Tablo içerisinde bulunan bir kaydı veya kayıtları silmek için kullanılır.

•Genel kullanım şekli aşağıdaki gibidir.

DELETE FROM TabloAdı
WHERE Koşul veya koşullar

•Örnek :

Doktorlar tablosundaki Doktor Id’si 1 olan doktorun sahip oldugu kaydi ve buna
bagli olarak o tablodaki tum verileri silebiliriz.

DELETE FROM Doktorlar
WHERE DoktorId = 1
•CREATE DATABASE Poliklinik

•CREATE TABLE Doktorlar
(
DoktorId Integer Not Null,
AdSoyad Text,
Brans Char(10),
Poliklinik Char(10),
Constraint PKC_DoktorId Primary Key (DoktorId)
)

•ALTER TABLE Doktorlar ADD Yas Char(2)NOT NULL

•INSERT INTO Doktorlar (DoktorId, AdSoyad, Brans, Poliklinik, Yas)
VALUES (1, 'Muazzez Sevim', 'Uzman', 'Noroloji', 37)

•SELECT DoktorID, AdSoyad, Brans, Poliklinik FROM Doktorlar

•UPDATE Doktorlar SET Brans = 'Uzman Hk', Yas = 40
WHERE DoktorId = 1

•DELETE FROM Doktorlar WHERE DoktorId = 1
T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - I
Metinsel Veri Tipleri
T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - II
Sayisal Veri Tipleri
T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - III
Tarihsel Veri Tipleri
T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - IV
Diger Veri Tipleri
Tablo Olusturmanin Mantigi Nedir Peki ?
•Tablolar verilerin saklanmasını sağlayan, alanlar (sütun-column) ve satırlardan
(row) oluşan birimlerdir.

•Tablo içerisinde her satır bir kaydı temsil etmektedir. Alanlar ise kayıtlara ait
özellikleri taşımaktadırlar.




Satır (Row): Tabloda bulunan bir kayıt.
Alan (Sütun-Column): Bir kayda ait özellik.
Anahtarlar – Keys Mantigi Nedir ?

•Bir kayıt içerisinde farklılıkları ve nitelikleri gösteren belirleyicilere anahtarlar
(keys) denir.

•Bir tablo içerisinde bulunabilecek anahtarlar sunlardir ;

•Birincil anahtar (Primary key - PK)

•Tekil anahtar (Unique key - UK)

•Referans anahtar (Foreign key - FK)

•Birleşik anahtardır (Composite key – CK)
Birincil anahtar (Primary key):
•Bir tablo içerisindeki satırları birbirinden ayırt eder. Birincil anahtar olan bir veri
aynı tablo içerisinde tekrarlanamaz. Yine bu alandaki veri boş bırakılamaz, yani
NULL değeri alamaz. Tek bir alan birincil anahtar olabileceği gibi bazı tablolarda
birden fazla alanın birleşmesiyle birincil anahtar oluşabilir.

Tekil anahtar (Unique key):
•Tablonun tekil anahtar olarak tanımlanmış bir alanına aynı değer sadece bir kez
girilebilir. Birincil anahtardan farklı olarak, tabloda bu alana ait sadece bir kayıt
NULL değeri alabilir. Birincil anahtar aynı zamanda tek anahtar olarak sayılabilir
fakat tek anahtarlar birincil anahtar değildirler.

Referans anahtar (Foreign key):
•Tablodaki bir veriyi başka tablodaki bir veri ile ilişkilendirir. İki tablo arasında
yapılan bu ilişkilendirme ile referans anahtar olarak tanımlanmış alana sadece
ilişkilendirdiği tablonun alanındaki veriler eklenebilir.

Birleşik anahtar (Composite Key):
•Birden fazla alanın birleştirilmesiyle birincil anahtar görevini üstlenecek
tanımlamalar yapılabilir. Bunlar birleşik anahtar olarak adlandırılır.
ODEV

Lutfen Asagidaki Isteklere Gore Butun Sorgularinizi Adim Adim Yaziniz ;

• OKUL isminde bir veri tabani olusturunuz.

• Ogrenciler isminde bir tablo olusturunuz.
    •Icerisinde OgrenciNo, OgrenciAdi, OgrenciSoyadi, TcKimlik, Bolum,
    AldigiDersKodu alanlarini ekleyiniz.
    •Olusturmus oldugunuz Ogrenciler tablosuna tutarli veriler giriniz.

• Ogretmenler isminde bir tablo olusturunuz.
    •Icerisinde OgrSicilNo, OgrtAdi, OgrtSoyadi, TcKimlik, VerdigiDersKodu
    alanlarini ekleyiniz.
    •Olusturmus oldugunuz Ogretmenler tablosuna tutarli veriler giriniz.

• Dersler isminde bir tablo olusturunuz.
    •Icerisinde Ders Id, DersAdi, DersKodu alanlarini ekleyiniz.
    •Olusturmus oldugunuz Dersler Tablosuna tutarli veriler giriniz.
Soru ve odev teslimleriniz icin mail adresinden ulasabilirsiniz…

                 nanonungunlugu@gmail.com

Mais conteúdo relacionado

Semelhante a Veri tabaniprogramlama 12.10.2012

Sql en-iyi-kursu
Sql en-iyi-kursuSql en-iyi-kursu
Sql en-iyi-kursusersld61
 
Sql egitim-cd-si
Sql egitim-cd-siSql egitim-cd-si
Sql egitim-cd-sisersld61
 
İleri Seviye T-SQL Programlama - Chapter 08
İleri Seviye T-SQL Programlama - Chapter 08İleri Seviye T-SQL Programlama - Chapter 08
İleri Seviye T-SQL Programlama - Chapter 08Cihan Özhan
 
Big Data Analytics
Big Data AnalyticsBig Data Analytics
Big Data AnalyticsMudur Alkan
 
Sql egitimi-eyup
Sql egitimi-eyupSql egitimi-eyup
Sql egitimi-eyupsersld61
 
Veri̇ tabani oluşturma ve yapilandirma
Veri̇ tabani oluşturma ve yapilandirmaVeri̇ tabani oluşturma ve yapilandirma
Veri̇ tabani oluşturma ve yapilandirmaoktaygokgol
 
Sql egitimi-atasehir
Sql egitimi-atasehirSql egitimi-atasehir
Sql egitimi-atasehirsersld61
 
İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02Cihan Özhan
 
Sql uzaktan-kurs
Sql uzaktan-kursSql uzaktan-kurs
Sql uzaktan-kurssersld61
 
Sql egitim-seti
Sql egitim-setiSql egitim-seti
Sql egitim-setisersld61
 
Sql kitabi
Sql kitabiSql kitabi
Sql kitabisersld61
 
Sql dokumani
Sql dokumaniSql dokumani
Sql dokumanisersld61
 
Sql egitimi-catalca
Sql egitimi-catalcaSql egitimi-catalca
Sql egitimi-catalcasersld61
 
Sql seminerleri
Sql seminerleriSql seminerleri
Sql seminerlerisersld61
 
Sql kursu-ucreti
Sql kursu-ucretiSql kursu-ucreti
Sql kursu-ucretisersld61
 
Sql kitaplari
Sql kitaplariSql kitaplari
Sql kitaplarisersld61
 
Sql en-iyi-egitimi
Sql en-iyi-egitimiSql en-iyi-egitimi
Sql en-iyi-egitimisersld61
 
SQL-ETL-Raporlama
SQL-ETL-RaporlamaSQL-ETL-Raporlama
SQL-ETL-RaporlamaDeniz Alkan
 

Semelhante a Veri tabaniprogramlama 12.10.2012 (20)

Sql en-iyi-kursu
Sql en-iyi-kursuSql en-iyi-kursu
Sql en-iyi-kursu
 
Sql egitim-cd-si
Sql egitim-cd-siSql egitim-cd-si
Sql egitim-cd-si
 
Delphi 7
Delphi 7Delphi 7
Delphi 7
 
İleri Seviye T-SQL Programlama - Chapter 08
İleri Seviye T-SQL Programlama - Chapter 08İleri Seviye T-SQL Programlama - Chapter 08
İleri Seviye T-SQL Programlama - Chapter 08
 
Big Data Analytics
Big Data AnalyticsBig Data Analytics
Big Data Analytics
 
Sql egitimi-eyup
Sql egitimi-eyupSql egitimi-eyup
Sql egitimi-eyup
 
Veri̇ tabani oluşturma ve yapilandirma
Veri̇ tabani oluşturma ve yapilandirmaVeri̇ tabani oluşturma ve yapilandirma
Veri̇ tabani oluşturma ve yapilandirma
 
Sql egitimi-atasehir
Sql egitimi-atasehirSql egitimi-atasehir
Sql egitimi-atasehir
 
İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02
 
Sql uzaktan-kurs
Sql uzaktan-kursSql uzaktan-kurs
Sql uzaktan-kurs
 
Sql egitim-seti
Sql egitim-setiSql egitim-seti
Sql egitim-seti
 
Sql kitabi
Sql kitabiSql kitabi
Sql kitabi
 
Sql dokumani
Sql dokumaniSql dokumani
Sql dokumani
 
Sql egitimi-catalca
Sql egitimi-catalcaSql egitimi-catalca
Sql egitimi-catalca
 
Sql ornek
Sql ornekSql ornek
Sql ornek
 
Sql seminerleri
Sql seminerleriSql seminerleri
Sql seminerleri
 
Sql kursu-ucreti
Sql kursu-ucretiSql kursu-ucreti
Sql kursu-ucreti
 
Sql kitaplari
Sql kitaplariSql kitaplari
Sql kitaplari
 
Sql en-iyi-egitimi
Sql en-iyi-egitimiSql en-iyi-egitimi
Sql en-iyi-egitimi
 
SQL-ETL-Raporlama
SQL-ETL-RaporlamaSQL-ETL-Raporlama
SQL-ETL-Raporlama
 

Mais de Sevdanur Genc

BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdf
BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdfBANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdf
BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdfSevdanur Genc
 
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştır
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştırBilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştır
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştırSevdanur Genc
 
Veritabani Programlama - Oracle V.Egitim - Materialized View Kullanimi
Veritabani Programlama - Oracle V.Egitim - Materialized View KullanimiVeritabani Programlama - Oracle V.Egitim - Materialized View Kullanimi
Veritabani Programlama - Oracle V.Egitim - Materialized View KullanimiSevdanur Genc
 
Veritabani Programlama - Oracle IV.Egitim - View Kullanimi
Veritabani Programlama - Oracle IV.Egitim - View KullanimiVeritabani Programlama - Oracle IV.Egitim - View Kullanimi
Veritabani Programlama - Oracle IV.Egitim - View KullanimiSevdanur Genc
 
Veritabani Programlama - Oracle I.Egitim - SQL Komutlari
Veritabani Programlama - Oracle I.Egitim - SQL KomutlariVeritabani Programlama - Oracle I.Egitim - SQL Komutlari
Veritabani Programlama - Oracle I.Egitim - SQL KomutlariSevdanur Genc
 
Veritabani Programlama - Oracle Kurulumu
Veritabani Programlama - Oracle KurulumuVeritabani Programlama - Oracle Kurulumu
Veritabani Programlama - Oracle KurulumuSevdanur Genc
 
Veritabani Programlama MySQL III. Egitimi
Veritabani Programlama MySQL III. EgitimiVeritabani Programlama MySQL III. Egitimi
Veritabani Programlama MySQL III. EgitimiSevdanur Genc
 
Veritabani Programlama MySQL II. Egitimi
Veritabani Programlama MySQL II. EgitimiVeritabani Programlama MySQL II. Egitimi
Veritabani Programlama MySQL II. EgitimiSevdanur Genc
 
Veritabani Programlama MySQL I. Egitimi
Veritabani Programlama MySQL I. EgitimiVeritabani Programlama MySQL I. Egitimi
Veritabani Programlama MySQL I. EgitimiSevdanur Genc
 
Anahtarlar Ve Tablolar Arasi Iliskiler
Anahtarlar Ve Tablolar Arasi IliskilerAnahtarlar Ve Tablolar Arasi Iliskiler
Anahtarlar Ve Tablolar Arasi IliskilerSevdanur Genc
 
MsSql Server'da Veri Tabani Calismalari
MsSql Server'da Veri Tabani CalismalariMsSql Server'da Veri Tabani Calismalari
MsSql Server'da Veri Tabani CalismalariSevdanur Genc
 

Mais de Sevdanur Genc (13)

BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdf
BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdfBANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdf
BANKACILIK 2023-2024 GÜZ FİNAL SINAV PRORAMI.pdf
 
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştır
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştırBilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştır
Bilisim Hukuku Ders Notlarina bir örnek olarak paylaşılmıştır
 
What Is Basecamp?
What Is Basecamp?What Is Basecamp?
What Is Basecamp?
 
Veritabani Programlama - Oracle V.Egitim - Materialized View Kullanimi
Veritabani Programlama - Oracle V.Egitim - Materialized View KullanimiVeritabani Programlama - Oracle V.Egitim - Materialized View Kullanimi
Veritabani Programlama - Oracle V.Egitim - Materialized View Kullanimi
 
Veritabani Programlama - Oracle IV.Egitim - View Kullanimi
Veritabani Programlama - Oracle IV.Egitim - View KullanimiVeritabani Programlama - Oracle IV.Egitim - View Kullanimi
Veritabani Programlama - Oracle IV.Egitim - View Kullanimi
 
Veritabani Programlama - Oracle I.Egitim - SQL Komutlari
Veritabani Programlama - Oracle I.Egitim - SQL KomutlariVeritabani Programlama - Oracle I.Egitim - SQL Komutlari
Veritabani Programlama - Oracle I.Egitim - SQL Komutlari
 
Veritabani Programlama - Oracle Kurulumu
Veritabani Programlama - Oracle KurulumuVeritabani Programlama - Oracle Kurulumu
Veritabani Programlama - Oracle Kurulumu
 
Veritabani Programlama MySQL III. Egitimi
Veritabani Programlama MySQL III. EgitimiVeritabani Programlama MySQL III. Egitimi
Veritabani Programlama MySQL III. Egitimi
 
Veritabani Programlama MySQL II. Egitimi
Veritabani Programlama MySQL II. EgitimiVeritabani Programlama MySQL II. Egitimi
Veritabani Programlama MySQL II. Egitimi
 
Veritabani Programlama MySQL I. Egitimi
Veritabani Programlama MySQL I. EgitimiVeritabani Programlama MySQL I. Egitimi
Veritabani Programlama MySQL I. Egitimi
 
Anahtarlar Ve Tablolar Arasi Iliskiler
Anahtarlar Ve Tablolar Arasi IliskilerAnahtarlar Ve Tablolar Arasi Iliskiler
Anahtarlar Ve Tablolar Arasi Iliskiler
 
MySQL Kurulumu
MySQL KurulumuMySQL Kurulumu
MySQL Kurulumu
 
MsSql Server'da Veri Tabani Calismalari
MsSql Server'da Veri Tabani CalismalariMsSql Server'da Veri Tabani Calismalari
MsSql Server'da Veri Tabani Calismalari
 

Veri tabaniprogramlama 12.10.2012

  • 1.
  • 2. Iletisim Icin : Blog : www.sevdanurgenc.com E - Mail : sevdanurgenc@sevdanurgenc.com nanonungunlugu@gmail.com
  • 3. Veri Nedir ? •Veri (Data) bir veya birden fazla bilgiden oluşan bir kümedir. •Bilgisayara girilen, bilgisayar tarafından saklanabilen ve işlenebilen herşeye veri denir. Veri Neden Saklanir ? •Veri saklamaktaki ana amaç, daha ileri bir tarihte saklanan verilere yeniden ulaşabilmek ve kullanabilmektir. Veri Saklama Yontemleri Nelerdir ? •Bilgisayar üzerinde notepad kullanarak metin tabanlı basit bir dosyada depolanması da gorunuste bir veri saklama yöntemidir diyebiliriz. •Tablo yapısında veri saklamamızı sağlayan Microsoft’un sunmus oldugu cozumlerde Excel ve Access gibi arayuz uygulamalari ornek gösterilebilir. Veya bunlara benzer sekilde OpenOffice’in biz kullanicilara sunmus oldugu Calc veya Base arayuz uygulamalarida veri saklamak icin ornek verileribilir. •Peki daha buyuk verilerde neler yapmamiz, neyi nerede kullanmamiz gerekiyor. Asil onemli sorun bu!
  • 4. Veri Tabani Kavrami •Veri tabanı (Database) temel olarak farklı tiplerdeki verileri düzenli bir şekilde saklamamızı ve kullanmamızı sağlayan depolama ortamıdır. Ve bu ortamlari kullanarak veriyi hatasız ve sağlıklı bir biçimde işlemek de islerimizi kolaylaştiracaktir. Bir veri tabanı sistemi üzerinde istediğimiz verileri depolayabilir, depolanan verileri çağırırken bazı şartlar belirtebilir, verileri değiştirebilir veya silebiliriz. •Günümüzde veritabanları hemen hemen her alanda sıklıkla kullanılmaktadır. Bu alanlara örnek verecek olursak; - Kişisel adres defterleri - Telefon rehberi - Online sözlükler -Kütüphane sistemler - Ödeme ve borç sistemleri - Ürün satış ve sipariş sistemleri - E-Ticaret siteleri - Banka sistemleri - Okul sistemleri - Hastane sistemleri
  • 5. Veri Tabani Yonetim Sistemleri DataBase Management System - DBMS) •Veri tabanında tutulacak olan verilerin uyacağı standartları, bu verilere nasıl erişilebileceğini ve verilerin disk üzerinde nasıl tutulacağını belirleyen sistemlerdir. İlişkisel Veri Tabanı Yönetim Sistemi Relational Database Management System – RDBMS •Veri tabanı mimarisi olan ilişkisel veritabanlarında veriler tablolar, satırlar ve alanlar halinde tutulmaktadır. Bu sayede veriler arasında ilişkilendirmeler yapılabilmekte, verilerin kullanımı ve yönetimi daha verimli hale getirilmektedir. İlişkisel veri tabanı mimarisini kullanan sistemlere de İlişkisel Veri Tabanı Yönetim Sistemi adı verilmektedir. •Günümüzde en sık kullanılan ilişkisel veri tabanı yönetim sistemleri arasında MySQL, Microsoft SQL Server , Oracle , Microsoft Access , ve PostgreSQL gösterebiliriz.
  • 6. SQL (Structered Query Language) Yapılandırılmış Sorgulama Dili •Butun ilişkisel veritabanlarında standart olarak kullanılan bir dildir. •SQL veritabanı ile kullanıcı arasındaki iletişimi sağlar. •Hazırladığıniz sorguları kullanarak veritabanında depolanan veriler üzerinde bütün işlemleri yapabilirsiniz. T-SQL (Transact SQL) •Transact SQL adı verilen bir SQL dilidir. •Daha iyi performans sağlaması için SQL dili üzerine eklentiler ve fonksiyonellikler eklenerek oluşturulmuş bir dildir. T-SQL İfade Tipleri T-SQL içerisinde 3 farklı ifade tipi bulunmaktadır. •Veri Tanımlama Dili (Data Definition Language - DDL) •Veri Kontrol Dili (Data Control Language - DCL) •Veri İşleme Dili (Data Manipulation Language - DML)
  • 7. Veri Tanımlama Dili (Data Definition Language - DDL) •Veri tabanında nesneler oluşturmak için gerekli olan ifadeleri sağlamaktadır. Bu ifadeler, veri tabanı veya tablo gibi yeni bir nesnenin oluşturulması, var olan nesne üzerinde değişiklikler yapılması veya nesnenin yok edilmesi için kullanılır. •Üzerinde işlem yapılan nesnenin ne gibi özellikleri ve alanları olacağı bu ifadeler içerisinde belirlenir. •T-SQL dilinde 3 adet veri tanımlama ifadesi bulunmaktadır. Bunlar: •CREATE •ALTER •DROP
  • 8. CREATE •Veri tabanı üzerinde nesne oluşturmak ya da tanımlamak için kullanılan komuttur. Oluşturulacak nesnenin özelliklerine göre farklı parametreler alabilmektedir. •Genel kullanımı şu şekilde olmaktadır: •CREATE NESNETİPİ Nesne Adı (Nesneye ait gerekli tanımlamalar) CREATE DATABASE Poliklinik ON ( Name = Poliklinik, FILENAME = 'C:Poliklinik.MDF', SIZE = 2mb, MAXSIZE = 5mb, FILEGROWTH = 1mb ) Veya CREATE DATABASE Poliklinik
  • 9. ALTER •Varolan bir nesne üzerinde değişiklikler yapmak için kullanılır. CREATE komutunda olduğu gibi değiştireceği nesneye göre farklı parametreler alabilmektedir. •Genel kullanımı aşağıdaki gibidir. •ALTER NESNETIPI Nesne Adı Yapılacak Değişiklik ALTER TABLE Doktorlar ADD Yas Char(2) NOT NULL
  • 10. DROP •Veri tabanındaki herhangi bir nesneyi silmek için kullanılır. Silinen nesne ile ilgili olarak içerisinde tuttuğu tüm bilgiler de silinmektedir. Örneğin bir tablo silindiğinde içerisindeki tüm bilgiler de veri tabanından silinecektir. Kullanımında dikkat edilmesi gereken bir sorgu ifadesidir. •Genel kullanımı aşağıdaki gibidir. •DROP NESNETIPI Nesne Adı DROP DATABASE Poliklinik
  • 11. Veri Kontrol Dili (Data Control Language - DCL) •T-SQL’de veri kontrol ifadeleri veri tabanı üzerindeki kullanıcılara ve rollere yetki vermek için kullanılmaktadır. •T-SQL’de 3 adet veri kontrol komutu bulunmaktadır. •Bu komutlar şunlardır: •GRANT Kullanıcıya veritabanına erişebilmesini veya T-SQL ifadeleri çalıştırabilmesini sağlayacak yetkileri verir. •DENY Kullanıcının belirli bir alana erişimini engellemek veya belirli T-SQL ifadelerini çalıştıramamasını sağlamak amacıyla kullanılır. •REVOKE Daha önceden GRANT veya DENY ile verilmiş yetki veya engelleri kaldırmak için kullanılır.
  • 12. Veri İşleme Dili (Data Manipulation Language - DML) •Veri işleme ifadeleri, veri tabanı üzerinde depolanan veriler üzerinde yapılması gereken işlemler için kullanılan ifadelerdir. • Veri seçme/getirme, veri ekleme, veri güncelleme ve veri silme gibi işlemlerin yapılmasını sağlarlar. •Toplam 4 adet veri işleme ifadesi bulunmaktadır. •INSERT •SELECT •UPDATE •DELETE
  • 13. INSERT •Bir tablo içerisine yeni bir veri eklemek için kullanılır. •Genel kullanımı aşağıdaki gibidir. INSERT INTO TabloAdı (VeriEklenecekAlan1, VeriEklenecekAlan2, ...) VALUES (EklenecekDeğer1, EklenecekDeğer2, ...) •Örnek : Doktorlar tablosuna, Doktor Id’si 1 olan 37 yasindaki ismi Muzazzez Sevim uzmanligi olan Noroloji poliklinigini aşağıdaki sql ifadesi yardımıyla ekleyebiliriz. INSERT INTO Doktorlar (DoktorId, AdSoyad, Brans, Poliklinik, Yas) VALUES (1, 'Muazzez Sevim', 'Uzman', 'Noroloji', 37)
  • 14. SELECT •Bir tablo içerisindeki verilerin tamamını getirir veya belirli şartlara göre bir kısmını filtreleyerek seçme işlemlerini gerçekleştirir. •Genel kullanım şekli aşağıdaki gibidir. SELECT SeçilecekAlan1, SeçilecekAlan2 … FROM TabloAdı •Örnek : Doktorlar tablosundaki tüm kayıtların OgrenciID, AdSoyad, Brans ve Poliklinik bilgileri aşağıdaki sql ifadesi ile elde edilebilir. SELECT DoktorID, AdSoyad, Brans, Poliklinik FROM Doktorlar
  • 15. UPDATE •Bir tablo içerisinde bulunan verilerin değiştirilmesi için kullanılır. •Genel kullanımı aşağıdaki gibidir UPDATE TabloAdı Set GuncellenecekAlan1 = YeniVeri1, GuncellenecekAlan2 = YeniVeri2 WHERE Koşul veya koşullar •Örnek : Doktorlar tablosundaki tüm kayıtların icerisindeki Doktor Id’si 1 olan doktorun Bransini Uzman Hk ve Yasinida 40 olarak guncelleyebilecegimiz, değiştirebilecegimiz aşağıdaki sql ifadesinden yararlanılabiliriz. UPDATE Doktorlar SET Brans = 'Uzman Hk', Yas = 40 WHERE DoktorId = 1
  • 16. DELETE •Tablo içerisinde bulunan bir kaydı veya kayıtları silmek için kullanılır. •Genel kullanım şekli aşağıdaki gibidir. DELETE FROM TabloAdı WHERE Koşul veya koşullar •Örnek : Doktorlar tablosundaki Doktor Id’si 1 olan doktorun sahip oldugu kaydi ve buna bagli olarak o tablodaki tum verileri silebiliriz. DELETE FROM Doktorlar WHERE DoktorId = 1
  • 17.
  • 18. •CREATE DATABASE Poliklinik •CREATE TABLE Doktorlar ( DoktorId Integer Not Null, AdSoyad Text, Brans Char(10), Poliklinik Char(10), Constraint PKC_DoktorId Primary Key (DoktorId) ) •ALTER TABLE Doktorlar ADD Yas Char(2)NOT NULL •INSERT INTO Doktorlar (DoktorId, AdSoyad, Brans, Poliklinik, Yas) VALUES (1, 'Muazzez Sevim', 'Uzman', 'Noroloji', 37) •SELECT DoktorID, AdSoyad, Brans, Poliklinik FROM Doktorlar •UPDATE Doktorlar SET Brans = 'Uzman Hk', Yas = 40 WHERE DoktorId = 1 •DELETE FROM Doktorlar WHERE DoktorId = 1
  • 19. T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - I Metinsel Veri Tipleri
  • 20. T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - II Sayisal Veri Tipleri
  • 21. T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - III Tarihsel Veri Tipleri
  • 22. T-SQL’de Kullanabilecegimiz Temel Veri Tipleri - IV Diger Veri Tipleri
  • 23. Tablo Olusturmanin Mantigi Nedir Peki ? •Tablolar verilerin saklanmasını sağlayan, alanlar (sütun-column) ve satırlardan (row) oluşan birimlerdir. •Tablo içerisinde her satır bir kaydı temsil etmektedir. Alanlar ise kayıtlara ait özellikleri taşımaktadırlar. Satır (Row): Tabloda bulunan bir kayıt. Alan (Sütun-Column): Bir kayda ait özellik.
  • 24. Anahtarlar – Keys Mantigi Nedir ? •Bir kayıt içerisinde farklılıkları ve nitelikleri gösteren belirleyicilere anahtarlar (keys) denir. •Bir tablo içerisinde bulunabilecek anahtarlar sunlardir ; •Birincil anahtar (Primary key - PK) •Tekil anahtar (Unique key - UK) •Referans anahtar (Foreign key - FK) •Birleşik anahtardır (Composite key – CK)
  • 25. Birincil anahtar (Primary key): •Bir tablo içerisindeki satırları birbirinden ayırt eder. Birincil anahtar olan bir veri aynı tablo içerisinde tekrarlanamaz. Yine bu alandaki veri boş bırakılamaz, yani NULL değeri alamaz. Tek bir alan birincil anahtar olabileceği gibi bazı tablolarda birden fazla alanın birleşmesiyle birincil anahtar oluşabilir. Tekil anahtar (Unique key): •Tablonun tekil anahtar olarak tanımlanmış bir alanına aynı değer sadece bir kez girilebilir. Birincil anahtardan farklı olarak, tabloda bu alana ait sadece bir kayıt NULL değeri alabilir. Birincil anahtar aynı zamanda tek anahtar olarak sayılabilir fakat tek anahtarlar birincil anahtar değildirler. Referans anahtar (Foreign key): •Tablodaki bir veriyi başka tablodaki bir veri ile ilişkilendirir. İki tablo arasında yapılan bu ilişkilendirme ile referans anahtar olarak tanımlanmış alana sadece ilişkilendirdiği tablonun alanındaki veriler eklenebilir. Birleşik anahtar (Composite Key): •Birden fazla alanın birleştirilmesiyle birincil anahtar görevini üstlenecek tanımlamalar yapılabilir. Bunlar birleşik anahtar olarak adlandırılır.
  • 26.
  • 27.
  • 28. ODEV Lutfen Asagidaki Isteklere Gore Butun Sorgularinizi Adim Adim Yaziniz ; • OKUL isminde bir veri tabani olusturunuz. • Ogrenciler isminde bir tablo olusturunuz. •Icerisinde OgrenciNo, OgrenciAdi, OgrenciSoyadi, TcKimlik, Bolum, AldigiDersKodu alanlarini ekleyiniz. •Olusturmus oldugunuz Ogrenciler tablosuna tutarli veriler giriniz. • Ogretmenler isminde bir tablo olusturunuz. •Icerisinde OgrSicilNo, OgrtAdi, OgrtSoyadi, TcKimlik, VerdigiDersKodu alanlarini ekleyiniz. •Olusturmus oldugunuz Ogretmenler tablosuna tutarli veriler giriniz. • Dersler isminde bir tablo olusturunuz. •Icerisinde Ders Id, DersAdi, DersKodu alanlarini ekleyiniz. •Olusturmus oldugunuz Dersler Tablosuna tutarli veriler giriniz.
  • 29. Soru ve odev teslimleriniz icin mail adresinden ulasabilirsiniz… nanonungunlugu@gmail.com