PostgreSQL: Yazılım Geliştiricileri İçin
Eğitmenler: Yasin Tatar, Muhammed Cihat ülker, Ahmet Fincan
Kurslara kayıt olmak için tıklayın
Katılımcılar için ön şartlar:
Giriş düzeyi SQL bilgisi
Eğitimin içeriği:
- Giriş
PostgreSQL temelleri
PostgreSQL kurulumu (Binary paket vekaynak koddan)
Veritabanı Nesneleri (table,Schema,Index vb..)
Veritabanı Oluşturma
PostgreSQL’ de kullanıcı/grup kavramı
Kullanıcı/grup yetkilendirmesi
Erişim kontrol mekanizması (hba.conf)
PostgreSQL yapılandırması
Veritabanına Bağlanma (psql de bağanılcak)
ACID & RDBM - Temel Tablo İşlemleri
Normalizasyon Kuralları (Index, TabloKullanımı vb. )
Temel Tablo İşlemleri: ALTER, DROP, CREATE, Truncate (sadece ana obje
Tabloolanlar)
Schema Kavramı (default shema değişimi olacak)
Sequences (Bağlı Sequences yapısı, bağı koparma bağlama, Sequences
sıfırlama,Sequences değer artırımı, DDL Çalışır değin)
Tablespaces (optimizasyon da önemi) - Veri Tipleri İle Çalışmak
Veri Tipleri (Array, Json, NoSQL, XML, IP )
Karakter Veri Tipleri İle Çalışmak
Veri Tiplerini Birbirine Dönüştürmek (tipCast)
Özel Veri Tipleri İle Çalışmak (Timestamp, Rowversion, Alias)
Domain
“Composite Type” Tanımlama ve Kullanma - Tablo Kısıtları(constraints) ile Veri Bütünlüğünü Sağlamak
Data Bütünlüğü nedir?(Referential Integrity)
Constraint Çeşitleri ve Tanımlanması (DEFAULT, CHECK)
Tablolar Arası Veri Bütünlüğü Sağlamak (Primary, Uniquee, Foreign
Constraint)
Cascade Operasyonlar
Rules Tanımlamak ve “Check Constraints” ile farklı - SELECT Deyimi ile Veri Sorgulama
Temel Bir Select ifadesinin yazılması
DISTINCT ile Tekil Veri Getirmek
Sütun ve Tablolara Takma İsim Vermek, - Gruplama ve Grup Veri Üzerinde Çalışmak
ORDER BY ile Veri Sıralama
GROUP BY İfadesi
HAVING İfadesi
OFFSET
Ön Tanımlı Fonksiyonlar (Sum, Max, Avg vs) - DML (Data Manipulation Kavramı)
Veritabanına Kayıt Eklemek
INSERT Cümleceği
SELECT ve INSERT’in Birlikte Kullanımı
Veritabanından Kayıt Güncellemek
UPDATE Cümleciği
Güncellemede WHERE Kullanımı
Veritabanından Kayıt Silmek
DELETE Cümleceği - Birden Çok Tabloyu Birbirine Bağlama, JOIN’ler
INNER JOIN’ler ve Alıştırmalar
OUTER JOIN ve Alıştırmalar
SELF JOIN
Ambiguous Hatası - Null Değerle Çalışmak
- İleri Seviye SQL
Alt Sorgular (Nested Query) ile Çalışmak
Alt Sorgularda EXIST, ANY-SOME ve ALL Kullanımı
UNION, UNION ALL ve EXCEPT,INTERSECT sorgularına destek
SELECT İçerisinde Fonksiyon/SP Kullanımları (Dağıtılan Foksiyon Listesi
BazAlıncak) - Transaction Management & MVCC
Temel TRANSACTION Yönetimi
Transaction Gerekliliği
BEGIN, ROLLBACK ve COMMIT, SAVEPOINT Deyimleri - View Nesneleri ve Tablo İfadeleri
View Nesneleri
View Yaratmak
View’ları Sorguda Kullanmak (View içinde View Çağırmak)
MATERIALIZED VIEW - Stored Procedure ile Çalışmak
Stored Procedure Kullanarak Veri Sorgulamak& Tipleri
Stored Procedure Parametreleri ile Çalışmak
Stored Procedure Yaratmak
Dinamik SQL İfadleri Oluşturmak veÇalıştırmak
Kontrol Logic Yapıları (if, while vs)
RAISE Yapısı,
Hata Yönetimi(RAISEERROR ve THROW Deyimleri)
TRY-CATCH Kullanıı
Throw Deyimi
Exception ERROR Nesnesi ile Çalışmak
Tablo Döndüren Fonksiyonlar
Parametreleri (In ve Out) SP’lerle Çalışmak - Veri Değişikliklerini Trigger Nesneleri ile Yönetmek
AFTER ve INSTEAD OF Trigger’ları
INSERT, UPDATE ve DELETE Trigger’ları
İçiçe Geçmiş Trigger’lar
Recursive Trigger Kavramı
Trigger İçerisinde Update Yapmak
Trigger’ların Çalışma Sırası
Trigger’ların Alternatifi
Trigger’lar İle İlgili Dikkat Edilmesi Gereken Kuralları - PL/SQL ‘de operatörler
Kontrol Yapıları
IF cümleleri
CASE cümleleri
Basit Loop cümlesi
While Loop cümlesi
For Loop cümlesi
Continue cümlesi
Explicit Cursors
Cursor tanımlama
Cursor Açma/Kapama
Cursor’dan veri fetch etme
Hata yakalama (Exception Handling)