Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Typ danych dla daty - datetime czy int?
Typ wartości daty w MySQL
datetime czy int?
datetime [ 12 ] ** [57.14%]
int [ 9 ] ** [42.86%]
Suma głosów: 21
Goście nie mogą głosować 
Apocalyptiq
post
Post #1





Grupa: Zarejestrowani
Postów: 230
Pomógł: 3
Dołączył: 8.01.2008

Ostrzeżenie: (10%)
X----


W bazie forum phpbb spotkałem się z datami zapisywanymi tylko jako int (ilość sekund które upłynęły od bodajże 1970.1.1). Ale przecież w MySQL jest też typ danych datetime (Y-m-d H:i:s). W którym lepiej zapisywać datę? W tym pierwszym jak gdzieś czytałem, za ileś lat ma ten sposób wysiąść (no bo ilość cyfr w nim przekroczy jakiśtam limit). Ale int pewnie lepiej się indeksuje.

Którego sposobu używacie? Jakie są za i przeciw co do każdego?

Ten post edytował Apocalyptiq 1.03.2009, 21:07:06


--------------------
http://estender.net - profesjonalne strony i aplikacje internetowe (Ruby on Rails, Kohana PHP)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Kolega coś mało pogooglał. winksmiley.jpg

http://www.phpbuilder.com/board/archive/in...t-10266444.html


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
skowron-line
post
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


W postgresie nie ma typu pola date i datetime ( tak kiedys slyszlaem nie sprawdzalem ) wiec jak bedziesz mial liczbe sekund to date() możesz sobie przeformatowac date.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(skowron-line @ 2.03.2009, 10:58:41 ) *
W postgresie nie ma typu pola date i datetime ( tak kiedys slyszlaem nie sprawdzalem )

Gdyby tak było to byłaby to najgorszy system bazodanowy na świecie. Jest tylko, że nazywa sie to TIMESTAMP a struktura tego pola to
'rrrr-mm-dd gg:mm:ss'


--------------------
Go to the top of the page
+Quote Post
skowron-line
post
Post #5





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(wookieb @ 2.03.2009, 11:06:08 ) *
Gdyby tak było to byłaby to najgorszy system bazodanowy na świecie. Jest tylko, że nazywa sie to TIMESTAMP a struktura tego pola to
'rrrr-mm-dd gg:mm:ss'

No okej ale jak zmieniasz pole typu date na timestamp bedzie problem.
A w przypadku ilości sekund będzie działało bez problemów.


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
wookieb
post
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(skowron-line @ 2.03.2009, 11:18:11 ) *
No okej ale jak zmieniasz pole typu date na timestamp bedzie problem.

A gdzie ten problem widzisz? Bo nie za bardzo go dostrzegam.


--------------------
Go to the top of the page
+Quote Post
rzymek01
post
Post #7





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


Cytat(Apocalyptiq @ 1.03.2009, 21:05:46 ) *
jak gdzieś czytałem, za ileś lat ma ten sposób wysiąść (no bo ilość cyfr w nim przekroczy jakiśtam limit).

zaniedługo na pewno mysql przeznaczy na pole timestamp 8 bajtów i będzie po problemie smile.gif


--------------------
:]
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




...a zauważyłeś, ilu hostingom pali się z update'ami MySQL?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
rzymek01
post
Post #9





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


hehe, racja, ale za kilka lat to będą inne czasy aaevil.gif

Po wejściu do euro polscy hostingodawcy beda się musieli nieźle napocić, bo porównując jakość/cena/parametry to zachodnie oferty sa korzystniejsze, a już mi bedzie wisieć gdzie kupię, bo waluta ta sama, łatwo porównać tongue.gif


--------------------
:]
Go to the top of the page
+Quote Post
Apocalyptiq
post
Post #10





Grupa: Zarejestrowani
Postów: 230
Pomógł: 3
Dołączył: 8.01.2008

Ostrzeżenie: (10%)
X----


Co do dat - zdecydowałem się na używanie intów. I tak jeżeli chcemy zaprezentować na stronie tą datę, no bo w większości przypadków tak jest, jeżeli mamy ją w datetime a chcemy jakoś ładnie sformatować, najlepiej jest najpierw zmienić to poprzez strtotime na inta, a następnie poprzez funkcję date wyjmować poszczególne człony, np. numer miesiąca, dzień itp. W przypadku inta od razu przemielamy go przez date i gotowe :-) No chyba że ktoś zamiast "15 marca 2009 o 15:32" wrzuca na strone "2009-03-15 15:32:42" ;-)


--------------------
http://estender.net - profesjonalne strony i aplikacje internetowe (Ruby on Rails, Kohana PHP)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 18:10