Çöpe atılan bir veriyi, veritabanından silmek yerine güncelleme
Kullanıcıların nedense her veriyi silme gibi bir huyu var. Kişisel olarak PHP/MYSQL uygulamalarımda, kullanıcıların çöpe attıkları istenmeyen verileri veritabanından silme taraftarı değilim. Bu yüzden SQL DELETE komutunu mümkün olduğu sürece kullanmamaya özen gösteririm. Delete komutu yerine UPDATE komutunu kullanmayı tercih ederim.
Oluşturduğum her MYSQL tablosunda “silindi” sütunu oluşturup, silinen her veride bu sütunu güncellerim.
Örneğin, sütun 0 ise veri silinmemiş, 1 ise verinin silinmiş olduğunu belirtir.
UPDATE tablo SET silindi=1 WHERE sira_no=2 // veri silindi UPDATE tablo SET silindi=0 WHERE sira_no=2 // veriye ulaşılabilir
Verinin silinip, silinmemiş olduğunu ise SELECT komutunda kontrol ederim. Eğer veri silinmemiş ise, listelerim.
SELECT * FROM tablo WHERE silindi=0
Bu metodla yanlışlıkla silinen verileri, ileride lazım olduğunda kolayca geri çağırmam mümkündür.
Bu metodun beni bir sürü baş ağrısından kurtardığını söylemek isterim. Deneyin, yararını göreceksiniz.