Ben mysql "rekor varsa o zaman GÜNCELLEMEYİ ELSE INSERT" uygulamak çalışıyorum. Özellikle, ben Doctrine ORM ile bunu nasıl anlamaya var.
Yerli MySql kullanarak bir çözüm "YİNELENEN KEY UPDATE" kullanmaktır. Bu ne yazık ki Doktrini desteklenmez.
Başka yarı çözüm sözdizimi "REPLACE INTO" kullanmaktır. Doktrin, bu destekler, ancak DEĞİŞTİR kayıtları GÜNCELLEMEYİ değil, bunun yerine kayıt düşer ve Bu nedenle (yeni bir otomatik artış kimliği ile.) Yeni bir tane oluşturur, benim yaptığım gibi otomatik artış kimlikleri bağlıdır eğer kötü bir çözüm .
Ben ameliyat çalışıyorum tablo INNODB, yani işlemler içine baktım, ama bunların dışında uygulamak gibi aynı kurallar işlemler içinde geçerli eğer ben tam anlamıyorum.
Ben bir hareket içinde "(INSERT INTO tablo GÖRMEZDEN critical_id
= $ id) IF THEN (UPDATE tablo SET field
= 'NEW_VALUE') ELSE çıkmak" diyebilir miyiz?
Ben böyle bir şey diyemeyiz, bu soruna herhangi bir çözüm var mı?