Skip to content

Instantly share code, notes, and snippets.

@baybatu
Last active October 13, 2022 11:21
Show Gist options
  • Save baybatu/0ea47d6aa112b8053d799c4f42478750 to your computer and use it in GitHub Desktop.
Save baybatu/0ea47d6aa112b8053d799c4f42478750 to your computer and use it in GitHub Desktop.
Tarih ve zamanların veritabanında saklanmasıyla alakalı bir öneri

Tablolarda tarih ve zamanı ayrı kolonlarda tutmak hatalı sorgulama yapma ihtimalini artırır. Arama için verilen bir zamanın değerini değiştirip arama yapılıyorsa bu durumda bug çıkma ihtimali var. Örnek tablo verisinin şu şekilde olduğunu düşünelim:

id tarih zaman
1 09/12/2021 23:50
2 09/12/2021 23:52
3 09/12/2021 23:55

Bu tabloda arama için verilen tarih=10/12/2021 ve zaman=00:15 parametrelerinden zamanı yarım saat geri alıp arama yapılmak istendiğini varsayalım.

Eğer zaman parametresinde yapılan değişiklikte gün dönümlerine dikkat edilmezse tarih değeri 09/12/2021 olması gerekirken 10/12/2021 kalır ve arama düzgün çalışmaz.

Bu tarz gün dönüm problemleriyle uğraşmamak için en temiz çözüm tarih ve zamanı tek kolonda datetime türünde tutmak ve aramayı bu kolon üzerinde yapmak.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment