VYS06

BSM211 Veritabanı Yönetim Sistemleri - Celal ÇEKEN, İsmail ÖZTEL, Veysel Harun ŞAHİN

Yapısal Sorgulama Dili (Structured Query Language, SQL)

Konular

  • Çalışma Ortamının Hazırlanması

  • Yapısal Sorgulama Dili (Structured Query Language, SQL)

  • Temel SQL Komutları (SQL DML Komutları; SELECT, JOIN, INSERT, UPDATE, DELETE)

  • Uygulama Programları ile VYS İşlemleri

Çalışma Ortamının Hazırlanması

  • PostgreSQL kurulumu

    • PostgreSQL 11.x

    • https://www.postgresql.org/download

  • pgAdmin kurulumu

    • pgAdmin 4

    • PostgreSQL ile dağıtılıyor.

  • Valentina Studio

    • https://www.valentina-db.com/en/valentina-studio-overview

  • NorthWind veritabanının içe aktarılması, dışa verilmesi

  • Pagila veritabanının içe aktarılması, dışa verilmesi

    • http://www.postgresqltutorial.com/postgresql-sample-database

Yapısal Sorgulama Dili (SQL)

  • SQL Fonksiyonları 2 bölüme ayrılabilir:

  • Veri Tanımlama Dili (Data Definition Language, DDL)

    • Yapısal Komutlar

    • Veritabanı, tablo, ilişki vs. oluşturma, değiştirme, silme vs.

  • Veri İşleme Dili (Data Manipulation Language, DML)

    • Veri ekleme, silme, güncelleme, sorgulama vs.

Temel SQL Komutları (SQL DML Komutları; SELECT, JOIN, INSERT, UPDATE, DELETE)

  • Aşağıdaki sorgular NorthWind Örnek Veritabanını Kullanmaktadır.

SELECT

  • Select Komutu veritabanından veri almak (arama/listeleme) için kullanılır.

WHERE

  • İstenilen koşula uyan kayıtların listelenmesi için WHERE komutu kullanılır.

DISTINCT

  • Sorgu sonucunda yer alan tekrarlı kayıtların (satırların), tek kayıt olarak getirilmesini sağlar.

  • Kaç farklı şehirden müşteri bulunmaktadır?

ORDER BY

  • Sorgular sonucunda listelenen kayıtların belirli alanlara göre alfabetik veya sayısal olarak artan ya da azalan şeklinde sıralanması için "ORDER BY" komutu kullanılır.

LIKE / NOT LIKE

  • Veriler içerisindeki belirli desenin aranması için WHERE ile birlikte kullanılır

BETWEEN

IN

NULL ve NULL olmayan içeriğe sahip alanların sorgulanması.

AS

  • AS ifadesi ile alanlara/tablolara takma isim verilir.

Tablo Birleştirme İşlemleri

  • Birleştirme (join) işlemi, farklı tablolardaki kayıtları birleştirip yeni veri kümeleri oluşturmak için kullanılır.

Doğal/İç Birleştirme (Natural/Inner Join)

  • "INNER JOIN" yerine "JOIN" ifadesi de kullanılabilir.

  • Aşağıdaki kullanım biçimi de INNER JOIN gibidir.

Sol Dış Birleştirme (Left Outer Join)

  • Aşağıdaki sorgu eşdeğerdir.

Sağ Dış Birleştirme (Right Outer Join)

  • Aşağıdaki sorgu yukarıdaki birleştirme sorgusuna eşdeğerdir.

"CROSS JOIN" ve "FULL OUTER JOIN" türleri de mevcuttur.

SELECT ... INTO

  • Bir tablodan alınan verileri, yeni bir tabloya kopyalamak için kullanılır.

  • Yeni tablonun mevcut olmaması gerekir.

INSERT

  • INSERT komutu tabloya yeni kayıt eklemek için kullanılır.

  • Ekleme işlemlerinde veri bütünlüğü kısıtları göz önüne alınır.

  • Yalnızca bazı sütunlara veri eklememiz mümkündür.

  • Veri eklenmeyen sütunlar NULL (boş) gözükecektir.

INSERT INTO ... SELECT

  • Bir tablodan alınan verileri, varolan bir tabloya kopyalamak için kullanılır.

UPDATE

  • UPDATE komutu tablodaki kayıt(lar)ın değiştirilmesini sağlar.

  • Güncelleme işlemlerinde veri bütünlüğü kısıtları göz önüne alınır.

  • WHERE ifadesi kullanılmazsa tüm satırlar değiştirilir.

DELETE

  • DELETE ifadesi tablodaki kayıt veya kayıtların silinmesini sağlar.

  • Silme işlemlerinde veri bütünlüğü kısıtları göz önüne alınır.

  • Tabloyu silmeden tablodaki bütün kayıtları silmek mümkündür.

  • Aşağıdaki komut tablodaki bütün kayıtları silmeye yarar.

Uygulama Programları ile VYS İşlemleri

Uygulama programları ile veritabanı işlemleri yapılabilmesi için, programlama dili ile kullanılan veritabanı arasında iletişimi sağlayacak sürücülere ihtiyaç vardır.

Java ile PostgreSQL İşlemleri

PostgreSQL jdbc sürücüsü https://jdbc.postgresql.org/download.html bağlantısından indirilebilir.

Sürücüler aşağıdaki temel fonksiyonları sağlar:

  • bağlantı kurulumu

  • sorgu çalıştırma

  • bağlantı sonlandırma

Aşağıdaki Java kodunun uygulanmasına yardımcı olabilecek örnek bir video https://youtu.be/aPEx1RexoCY bağlantısından izlenebilir.

.net ile PostgreSQL İşlemleri

.net platformu ile Postgresql işlemleri için buraya bakınızarrow-up-right

Ekleme/Silme/Değiştirme/Arama İşlemlerini İçeren Örnek Uygulama

Örnek Uygulamanın kaynak kodları ve anlatımını içeren videolara erişmek için: https://github.com/celalceken/NesneYonelimliAnalizVeTasarimDersiUygulamalari/tree/master/Ders9

Last updated