SQL DATABASES USING SQLALCHEMY: USING THE SQLALCHEMY ORM EĞİTİMİ

Python'da veritabanını SQLAlchemy ORM ile yönetin

Declarative model, Session, ilişkiler ve Alembic ile uçtan uca SQLAlchemy ORM

SQLAlchemy ORM Eğitimi, Python geliştiricilerine ilişkisel veritabanını nesne yönelimli biçimde yönetmeyi öğretir. Engine ve bağlantı havuzundan Core katmanındaki SQL Expression Language'e, declarative modellerden Session yaşam döngüsüne, bire-çok ve çoka-çok…

3 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

SQLAlchemy Core ve ORM katmanıyla Python nesnelerini ilişkisel tablolara eşleme

SQLAlchemy ORM Eğitimi, Python uygulamalarında ilişkisel veritabanını nesne yönelimli biçimde yönetmeyi öğretir. Katılımcılar Engine ve bağlantı havuzu ile başlar, Core katmanındaki Table ve SQL Expression yapısını kavrar, ardından declarative model tanımına geçer. Session yaşam döngüsü, unit of work deseni, filtreleme, join, eager ve lazy yükleme, bire-çok ve çoka-çok ilişkiler ile Alembic göçleri SQLite, PostgreSQL ve MySQL üzerinde uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; Engine ve Core temellerinden declarative modellere, oturum ve ilişkilere, en son Alembic göçleri ve performansa ilerlenir.

Seviye

Orta Seviye — Python'da SQLAlchemy ORM ile model, oturum, ilişki ve sorgu yönetimi

Öğrenme Metodu

Her konu gerçek bir model üzerinde Python kodu yazılarak, oturum açıp sorgu çalıştırarak ve üretilen SQL incelenerek uygulamalı işlenir.

Neden Bu Eğitim?

🐍Pythonik veri erişimi

Ham SQL dizeleri yerine Python nesneleriyle çalışarak kodu okunur, bakımı kolay ve veritabanından bağımsız hale getirirsiniz.

🔗İlişkileri doğru kurma

Bire-çok, çoka-çok ve kendine referanslı ilişkileri relationship ile tanımlayıp N+1 sorgu tuzağından kaçınmayı öğrenirsiniz.

🧭Üretime hazır şema

Alembic ile sürümlenmiş göçler üreterek şema değişikliklerini güvenli, geri alınabilir ve takip edilebilir biçimde yönetirsiniz.

Anahtar Konular

sqlalchemy eğitimisqlalchemy ormpython ormpython veritabanı eğitimialembic migrationsqlalchemy coredeclarative modelpython sql kursuorm ilişkilerisqlalchemy session
“SQLAlchemy ORM ile veritabanınızı Python nesneleri gibi düşünürsünüz; şema sürümlenir, ilişkiler net ve sorgular okunur hale gelir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Python bilgisi

Fonksiyon, sınıf, nesne ve modül kavramlarıyla orta düzey Python yazabilme becerisi gereklidir.

2
Temel SQL

SELECT, JOIN ve WHERE gibi temel SQL ifadelerine aşinalık konuyu anlamayı kolaylaştırır.

3
Komut satırı

pip ile paket kurma ve sanal ortam oluşturma gibi temel terminal işlemlerini bilmek faydalıdır.

4
Çalışma ortamı

Python 3.10+, bir kod editörü ve SQLite'ın kurulu olduğu bir bilgisayar gereklidir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı Engine ve bağlantı havuzunu yapılandırır, Core katmanında Table nesneleri tanımlar ve SQL Expression Language ile derlenen sorguları çalıştırıp inceler.
Modül 1
Kurulum ve Engine Oluşturma
  • pip ile SQLAlchemy kurulumu ve sanal ortam hazırlığı
  • create_engine ile veritabanı URL'si ve sürücü seçimi
  • SQLite, PostgreSQL ve MySQL bağlantı dizelerinin yapısı
  • Bağlantı havuzu (pool_size, max_overflow) ayarları
  • echo=True ile üretilen SQL'i konsolda izleme
  • Engine.connect ve bağlamsal bağlantı yönetimi
Modül 2
MetaData ve Table Tanımları
  • MetaData nesnesiyle şema tanımının toplanması
  • Column, tip ve constraint (nullable, unique) tanımları
  • ForeignKey ile tablolar arası bağların kurulması
  • create_all ve drop_all ile tabloların yönetimi
  • reflect ile mevcut şemanın otomatik keşfi
  • Index tanımlarının MetaData üzerinde oluşturulması
Modül 3
SQL Expression Language
  • select() yapısıyla sütun ve tablo seçimi
  • where, and_, or_ ile koşul ifadelerinin kurulması
  • insert, update ve delete ifadelerinin yazımı
  • join ve outerjoin ile tabloların birleştirilmesi
  • order_by, group_by ve func ile toplama fonksiyonları
  • Derlenen SQL metninin incelenmesi ve parametre bağlama
Modül 4
Çalıştırma ve Sonuç İşleme
  • Connection.execute ile ifadelerin çalıştırılması
  • Result ve Row nesnelerinden veri okuma
  • mappings() ile sözlük biçiminde sonuç alma
  • Transaction başlatma, commit ve rollback
  • begin() bloğuyla otomatik işlem yönetimi
  • Parametreli sorgularla SQL enjeksiyonundan korunma
Günün hedefiKatılımcı declarative base ile model sınıfları tanımlar, Session ile nesneleri ekler, günceller ve sorgular, unit of work deseniyle kalıcılığı yönetir.
Modül 1
Declarative Model Tanımı
  • DeclarativeBase ve Mapped tip açıklamalı modern eşleme
  • mapped_column ile sütun ve kısıt tanımları
  • Birincil anahtar, varsayılan değer ve server_default
  • __tablename__ ve tablo seçeneklerinin belirlenmesi
  • __repr__ ile model nesnelerinin okunur gösterimi
  • Hybrid property ile hesaplanan alan tanımı
Modül 2
Session ve Unit of Work
  • sessionmaker ile Session fabrikasının kurulması
  • add, add_all ile nesnelerin oturuma eklenmesi
  • flush ve commit arasındaki farkın kavranması
  • Identity map ve kimlik tekilliği mantığı
  • expire, refresh ve nesne durumu geçişleri
  • Context manager ile oturum kapatma güvenliği
Modül 3
ORM ile Sorgulama
  • select(Model) ile 2.0 tarzı ORM sorguları
  • Session.scalars ve scalar_one ile sonuç alma
  • filter, filter_by ve where ile koşullama
  • order_by, limit, offset ile sayfalama
  • func.count ve group_by ile toplama sorguları
  • exists ve any ile varlık kontrolü
Modül 4
Güncelleme ve Silme
  • Nesne alanını değiştirip commit ile güncelleme
  • Session.delete ile nesnelerin silinmesi
  • Toplu update ve delete ifadelerinin çalıştırılması
  • synchronize_session ile oturumun eşitlenmesi
  • Kademeli (cascade) silme davranışının yönetimi
  • Değişiklik izleme ve dirty nesnelerin tespiti
Günün hedefiKatılımcı bire-çok ve çoka-çok ilişkileri kurar, lazy ve eager yükleme stratejilerini seçer, N+1 sorununu çözer ve Alembic ile şema göçlerini uygular.
Modül 1
İlişki Tanımları
  • relationship ve back_populates ile çift yönlü bağ
  • Bire-çok ilişki ve ForeignKey yerleşimi
  • Çoka-çok ilişki ve association tablosu kullanımı
  • Association object deseniyle ara tablo verisi
  • Kendine referanslı (self-referential) ilişkiler
  • cascade seçenekleriyle ilişkili silme davranışı
Modül 2
Yükleme Stratejileri
  • Lazy loading varsayılan davranışı ve maliyeti
  • selectinload ile ilişkilerin toplu yüklenmesi
  • joinedload ile tek sorguda birleştirmeli yükleme
  • N+1 sorgu probleminin tespiti ve çözümü
  • contains_eager ile elle join sonucunu eşleme
  • raiseload ile beklenmeyen sorguların engellenmesi
Modül 3
Alembic ile Göçler
  • alembic init ile göç ortamının kurulması
  • env.py içinde metadata ve URL yapılandırması
  • autogenerate ile model farklarından göç üretimi
  • upgrade ve downgrade fonksiyonlarının yazımı
  • alembic upgrade head ile şemanın uygulanması
  • Göç sürüm geçmişi ve geri alma yönetimi
Modül 4
Performans ve İyi Uygulamalar
  • Oturum kapsamının (scope) doğru belirlenmesi
  • Bulk insert ile toplu veri yazma teknikleri
  • query cache ve baked query yaklaşımları
  • Connection pool metriklerinin izlenmesi
  • Katmanlı mimaride repository deseni kullanımı
  • FastAPI/Flask ile oturum entegrasyonu örnekleri

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Engine yapılandırma

create_engine ile farklı veritabanlarına bağlanır, bağlantı havuzunu ve URL parametrelerini doğru yapılandırabilirsiniz.

✅
Core ile sorgu

SQL Expression Language kullanarak select, insert ve join ifadelerini Python'da güvenli biçimde kurabilirsiniz.

✅
Model tanımlama

Declarative base ve Mapped tiplerle model sınıfları tanımlar, kısıt ve varsayılan değerleri belirleyebilirsiniz.

✅
Session yönetimi

Session yaşam döngüsünü, flush ile commit farkını ve unit of work desenini doğru uygulayabilirsiniz.

✅
İlişki kurma

Bire-çok ve çoka-çok ilişkileri relationship ile tanımlar, back_populates ve cascade davranışını yönetebilirsiniz.

✅
Yükleme optimizasyonu

selectinload ve joinedload stratejileriyle N+1 sorun unu çözer, sorgu sayısını belirgin biçimde azaltabilirsiniz.

✅
Alembic göçleri

Alembic ile model farklarından göç üretir, upgrade ve downgrade ile şemayı güvenle sürümleyebilirsiniz.

✅
Üretim pratikleri

Repository deseni, toplu yazma ve havuz izlemeyle ORM'i gerçek projelerde performanslı biçimde kullanabilirsiniz.

Kimler İçin Uygundur?

  • Python ile web veya veri uygulaması geliştiren
  • ham SQL yerine bir ORM katmanı kullanmak isteyen yazılım geliştiriciler
  • Flask/FastAPI geliştiricileri
  • veri mühendisleri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Python ile uygulama geliştiren, ham SQL yerine bir ORM kullanmak isteyen yazılım geliştiriciler, Flask veya FastAPI geliştiricileri ve veri mühendisleri için uygundur. Orta düzey Python ve temel SQL bilgisi beklenir; SQLAlchemy'ye sıfırdan başlanır.
SQLAlchemy Core ile ORM arasındaki fark nedir?
Core katmanı SQL ifadelerini Python nesneleriyle oluşturan, tabloya yakın bir API sunar. ORM ise Python sınıflarını tablolara eşleyip Session ve unit of work ile nesne odaklı çalışır. Eğitimde önce Core, ardından onun üstüne kurulu ORM işlenir; ikisi birlikte kullanılabilir.
Hangi veritabanları kullanılıyor?
Örnekler kurulumu kolay olduğu için SQLite üzerinde başlar, ardından PostgreSQL ve MySQL/MariaDB bağlantıları gösterilir. SQLAlchemy veritabanından büyük ölçüde bağımsız çalıştığı için öğrenilen desenler Oracle ve SQL Server gibi diğer sistemlere de uygulanabilir.
Alembic göçleri eğitime dâhil mi?
Evet. Üçüncü gün Alembic ile göç ortamı kurulur, autogenerate ile model farklarından göç üretilir, upgrade ve downgrade fonksiyonları yazılır ve şema sürümleme uygulamalı gösterilir. Böylece şema değişiklikleri güvenli ve geri alınabilir biçimde yönetilir.
Eğitim sonunda sertifika veriliyor mu?
Programı tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası alır. Eğitim online veya yüz yüze yapılabilir ve kurumun kullandığı Python sürümü ile veritabanına göre uyarlanabilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. SQL Databases Using SQLAlchemy: Using the SQLAlchemy ORM Eği Sertifika Kodu DV-2026XX00 Tarih 23.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre3 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Veritabanı Yönetimi TemelleriDB for LUW: Introduction & Fundamentals Eğitimi
Veritabanı Eğitimleri

DB for LUW: Introduction & Fundamentals Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

IBM Db2 for LUW mimarisi, kurulum, instance ve veritabanı yapısı, bağlantı, temel SQL, yetki ve yedekleme uygulamalı işlenir. 2 günlük kurumsal eğitim.

Detayları Gör →
Veritabanı Yönetimi TemelleriDB SQL Eğitimi
Veritabanı Eğitimleri

DB SQL Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

SELECT, JOIN, GROUP BY, alt sorgular, pencere fonksiyonları, görünümler, indeksler ve transaction uygulamalı işlenir. 3 günlük kurumsal SQL eğitimi.

Detayları Gör →
Veritabanı Yönetimi TemelleriDDL, DML, & Constraints Eğitimi
Veritabanı Eğitimleri

DDL, DML, & Constraints Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

CREATE/ALTER, INSERT/UPDATE/DELETE, PRIMARY KEY, FOREIGN KEY, CHECK kısıtları ve referans bütünlüğü uygulamalı işlenir. 3 günlük kurumsal SQL eğitimi.

Detayları Gör →
Veritabanı Yönetimi TemelleriDeveloping SQL Databases Eğitimi
Veritabanı Eğitimleri

Developing SQL Databases Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

SQL veritabanı geliştirme eğitimi: tablo tasarımı, veri türleri, normalizasyon, kısıtlar, indeks ve view ile sağlam şema tasarımı öğretilir.

Detayları Gör →
Veritabanı Yönetimi TemelleriDML & Multi-table Queries Eğitimi
Veritabanı Eğitimleri

DML & Multi-table Queries Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

SQL DML ve çok tablolu sorgu eğitimi: INSERT, UPDATE, DELETE, MERGE, JOIN türleri, alt sorgular, GROUP BY, küme işlemleri, görünümler ve CTE uygulamalı işlenir.

Detayları Gör →
Veritabanı Yönetimi TemelleriEnterprise Database Migration (EDM) Eğitimi
Veritabanı Eğitimleri

Enterprise Database Migration (EDM) Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Veritabanı göçü eğitimi: değerlendirme, şema dönüşümü, Data Pump, AWS DMS, CDC ile kesintisiz çoğaltma, cutover ve veri mutabakatı uygulamalı işlenir.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn