AccessTr.neT
Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme (/konu-php-mysqli-ayni-anda-iki-farkli-tablo-guncelleme.html)



Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - serkandiker - 23/06/2018

İ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ı ????


Cvp: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - ozanakkaya - 23/06/2018

Merhaba, kullandığınız sorgu kodlarını görebilir miyiz??


Cvp: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - ozguryasin - 24/06/2018

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


Cvp: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - serkandiker - 25/06/2018

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


Cvp: Php Mysqli Aynı Anda İki Farklı Tablo Güncelleme - ozguryasin - 25/06/2018

çö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.