kaptanblack adlı üyeden alıntı: mesajı görüntüle
Php ile yaparsaniz kontrol etmeniz icin bir sorgu daha yazmaniz gerekecektir. Eger mysqlden unique secerseniz ilgili alani, bu sefer sorgu basarili olsa bile o degerden bir tane daha oldugu icin sorgu calismayacaktir. Bu durumda kullaniciya genel bir hata mesaji dondurebilirsiniz.

Eger cok kullanilacak bir islem degil ise php ile kontrol yapin. Bu sekilde eger unique kayittan varsa dbde, kullaniciya da boyle bir kayit var gibi daha aciklayici bir hata mji verebilirsiniz

U8860 cihazımdan Tapatalk kullanılarak gönderildi
RooTsGhosT adlı üyeden alıntı: mesajı görüntüle
hocam o zaman sadece id yi değilde unique olmasını istediğiniz başka alanlar var ise id yerine onları sorgularsanız daha iyi olur bence zaten unique olarak eklediğini değerin tekrarlanma ihtimali yoktur.Tekrarlanma ihtimalinde kayıt yapılmaz...

Aslında konuyu biraz eksik açtım asıl mantık şu şekilde,

bir ayarlar tablosu düşünün sistemin tüm ayarları bu tablo üzerinden okunacak,

ayar ismi kısmını unique olarak belirlemek istiyorum yani, site_ismi şeklinde bir ayar verdiğimde kullanıcı sisteme kendi modülünü dahil ettiğinde yada bir sorgu çalıştırdığında 2. kez site_ismi şeklinde bir değer girememeli..

Bunu unique ile çok güzel çözüyorum , unique kullanmadan da kullanıcıya ayar_kaydet isminde bir fonksiyon verip ayarı bunun üzerinden güncellemesi/eklemesi için yine benim kontrolümde olan bir işlem sunuyorum buraya kadar yapıda bozulma olmayacak ama tutarda insert_post ile giriş yaparsa unique ile engellemek istiyorum.

Burda asıl soru şu unique kullanmam performans/dbboyutu/sorgu süreleri gibi işlemlerde bir dezavantaj yaratırmı ?