12 saatlik zaman içine DAMGASI SQL Torna

4 Cevap php

İnsanların belirli zamanlarda için bir şeyler planlamak için izin verir ve sonra onları görüntüleyen bir uygulama yazıyorum. Ben bu yapıya ihtiyacımız DB yapıyorum şeyler vardır çünkü olayın zamanı, bir SQL TIME gibi veritabanında saklanır.

However, on the output page I want the time to be in 12:00 am/pm format, but I don't want to run a conversion script every time I step through the database output loop. I don't want this:

while (database loop){
convert to clean time
output event info, with clean time
}

Ben çok fazla gerginlik ve gereksiz olduğunu düşünüyorum çünkü. Iki kez (24 saatte bir kez ve 12'de) db zaman depolama bu daha kısa yapmak için bir yolu var mı?

4 Cevap

Çıktı sayfa sunum tabakasıdır. Veritabanı katmanına sunum sorunları kadar karışmaz. Özellikle sadece sunumun aşkına bir denormalisation zorlamayın.

i bir dönüşüm komut dosyası i veri tabanı çıkış döngü adım her zaman çalıştırmak istemiyorum

Whyever değil? Kullandığınız dil ne bağlı olarak sadece sayfanın üzerine plonking önce strftime'a () işlemi aracılığıyla gönderme süresi daha fazla bir çalışma olmamalıdır. Bu yavaş olacak değil.

Sen DBMS ve hangi platform hangi devlet yok, ama en modern olanları ya DB seviyesinde, CONVERT veya kullanabilirsiniz CAST fonksiyonu çeşit var, ya da çıkış işlenirken olacaktır.

sql server kullanımı için stil 100 ile dönüştürmek

select convert(varchar(30),getdate(),100)

6 Şubat 2009 13:44

Veritabanında süreleri ve tarihleri ​​dönüştürme çok az kaynak alır ve PHP veya JavaScript yapmaktan daha hızlı olacaktır. Ben veritabanı örneğin tarafından sağlanan tarih ve saat fonksiyonu kullanmak DATE_FORMAT(date,format) mySql içinde.