PDO ile İşlemler
Birden çok sorguyu beginTransaction ve commit ile atomik işlemler halinde gruplandırın.
PDO ile İşlemler, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.
İşlem Nedir
İşlem, birden çok SQL ifadesini tek bir atomik birimde gruplandırır: tümü başarılı olur veya tümü geri alınır.
ACID Özellikleri
İşlemler ACID özelliklerini garanti eder: Atomiklik, Tutarlılık, Yalıtım ve Kalıcılık.
beginTransaction()
$pdo->beginTransaction() ile bir işlem başlatın. commit() veya rollBack() çağrılana kadar otomatik onaylama devre dışıdır.
commit()
beginTransaction() çağrısından sonra yapılan tüm değişiklikleri kalıcı olarak kaydeder.
rollBack()
beginTransaction() çağrısından sonra yapılan tüm değişiklikleri atar ve veritabanını işlemden önceki durumuna döndürür.
İşlem Şablonu
İşlemleri her zaman try/catch içine alın:
<?php
try {
$pdo->beginTransaction();
$pdo->prepare("UPDATE accounts SET balance = balance - ? WHERE id = ?")
->execute([100, $senderId]);
$pdo->prepare("UPDATE accounts SET balance = balance + ? WHERE id = ?")
->execute([100, $receiverId]);
$pdo->commit();
} catch (PDOException $e) {
$pdo->rollBack();
throw $e;
}Kayıt Noktaları
PDO, iç içe işlemleri yerel olarak desteklemez. Bir işlem içindeki kısmi geri almalar için SQL SAVEPOINT komutlarını kullanın.
inTransaction()
$pdo->inTransaction() ile etkin bir işlem olup olmadığını denetleyin. true veya false döndürür.
Otomatik Onaylama Kipi
PDO varsayılan olarak otomatik onaylama kipindedir: her ifade hemen onaylanır. beginTransaction() otomatik onaylamayı devre dışı bırakır.
Yalıtım Düzeyleri
MySQL şunları destekler: READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ (varsayılan), SERIALIZABLE. $pdo->exec("SET TRANSACTION ISOLATION LEVEL READ COMMITTED") ile ayarlayın.
İşlemler Ne Zaman Kullanılır
Şu durumlarda kullanın: banka havaleleri, stok düşümü içeren sipariş oluşturma ve kısmi tamamlanmanın kabul edilemez olduğu çok tablolu yazma işlemleri.
DDL ve İşlemler
MySQL'de DDL ifadeleri (CREATE TABLE, ALTER TABLE) örtük bir onaylamaya neden olur. Bir işlem içindeki DDL'yi geri alamazsınız.
Hızlı Kontrol
rollBack() ne yapar?
Sıkça Sorulan Sorular
“PDO ile İşlemler” dersi ücretsiz mi?
Evet — “PDO ile İşlemler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.
“PDO ile İşlemler” dersinde ne öğreneceğim?
Birden çok sorguyu beginTransaction ve commit ile atomik işlemler halinde gruplandırın. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
PHP Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“PDO ile İşlemler” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- PDO ile MySQL'e Bağlanma
- Hazırlanmış İfadeler ve Parametre Bağlama
- PDO ile Sonuçları Alma
- PDO ile İşlemler