AccessTr.neT

Tam Versiyon: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
İyi günler php ile mysql veritabanındaki iki farklı tabloyu güncellemek için iki farklı sorgu kullandığımda ilk sorgu sorunsuz çalışıyor ama ikinci sorgu zaman zaman hata vermeksizin tamamlanmıyor.Bu şekilde iki tabloyu eş zamanlı güncellemek için örnek bir kod varmı ????
Merhaba, kullandığınız sorgu kodlarını görebilir miyiz??
Merhaba;

Commit & RollBack fonksiyonu ile sorunu çözersin. İki sorgun sorunsuz çalışırsa commit eder, biri çalışmazsa rollback edip iki sorgu işlemini iptal eder. Diğer bir detişle Commit te tüm işlemler olumlu ise yazar, Rollback iilem sırasında sorun oluşursa hepsini iptal eder. Bu fonksiyonu bankalar bir hesaba para aktarırken kullanır. Örneğin para göndereceksiniz, hesabınızdan para düşer karşı hesaba eklenir ise commit gerçekleşir, sizden para düşüp karşı tarafa eklenmesse eollback olup işlem iptal edilir, karşı tarafa para gitnediği gibi sizin hesabınızda eklenme olmaz
Kod:
mysql_query("START TRANSACTION");
$flag = true;
$query = "INSERT INTO testing (myid) VALUES ('test')";

$query2 = "INSERT INTO testing2 (myid2) VALUES ('test2')";

$result = mysql_query($query) or trigger_error(mysql_error(), E_USER_ERROR);
if (!$result) {
$flag = false;
}

$result = mysql_query($query2) or trigger_error(mysql_error(), E_USER_ERROR);
if (!$result) {
$flag = false;
}

if ($flag) {
mysql_query("COMMIT");
} else {        
mysql_query("ROLLBACK");
}
Tesekkur ederim yukaridaki gibi bir ornek buldum sorunu cozecegini dusunuyorum ilginiz icin tekrar tesekkur ederim
çözecektir Commit & RollBack  ta bir nevi if else fonksiyonu gibi çalışır. iki veya daha fazla olay gerçekleşirse devam eder eğer bir tanesi gerçekleşmezse diğer olasılığa geçer ve hepsini iptal eder.