Wojciech Potocki ...
- 1
- 2
Wojciech
Sznapka
CTO @ STS Zakłady
Bukmacherskie
Temat: Operacje na dacie
echo date("Y-m-d H:i:s", strtotime("-1 day"));
Krzysztof
P.
Programista, Team
Leader
Temat: Operacje na dacie
A dlaczego chcesz to mieć w PHP?Wojciech Potocki ...
Temat: Operacje na dacie
Michał S.:
A dlaczego chcesz to mieć w PHP?
Bo z php najlepiej mi sie pracuje, a co proponujesz innego?
Pierwsza odpowiedź w zupelności mi pomogła więc problem już rozwiązany
Mateusz
Kulesza
Front-End Developer
at IOKI E-volution
in education,
Cons...
Temat: Operacje na dacie
myślałem, że chodzi ci o SQL( np. " WHERE `data` < NOW() ")
ale jak mówisz, że " echo date("Y-m-d H:i:s", strtotime("-1 day")); "
to to czego potrzebowałeś to ok.
ps. mam nadzieje, że nie pobierasz wszystkich rekordów i nie sprawdzasz każdego w php !? bo to trochę niemądrze.
pps. w razie czego :
http://dev.mysql.com/doc/refman/5.0/en/datetime.html
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-f...
Krzysztof
P.
Programista, Team
Leader
Temat: Operacje na dacie
Ja bym założył, że wbudowana funkcja SQL działa szybciej... ale to pewnie tylko moje zdanie.(może za dużo triggerów napisałem i się przyzwyczaiłem do programowania też na poziomie bazy)
Marcin Tarapata Analityk/Tester
Temat: Operacje na dacie
Michał S.:
Ja bym założył, że wbudowana funkcja SQL działa szybciej... ale to pewnie tylko moje zdanie.
(może za dużo triggerów napisałem i się przyzwyczaiłem do programowania też na poziomie bazy)
Takie małe [OT]
Dobrze zakładasz, ale... :)
Dla przykładu duży system Siebel wykorzystuję BD tylko do trzymania danych w tabelach, cała logika aplikacji jest zaszyta w systemie. Co nam to daje? Taki system można przenosić pomiędzy MS SQL, Oracle, Informix (stare wersje Siebla podobno można było uruchomić na MySQLu) itd. nie martwiąc się o relacje, triggery, procedury itp.
Jak widać, można różnie podejść do projektowania aplikacji :)
Wojciech Potocki ...
Temat: Operacje na dacie
Mateusz Kulesza:
ps. mam nadzieje, że nie pobierasz wszystkich rekordów i nie sprawdzasz każdego w php !? bo to trochę niemądrze.
Nie martw sie nie robie tak:)
Michał
C.
Deputy Head of
Software Development
Temat: Operacje na dacie
Najcześciej robie tak, ze przechowuje date jako unixowy znacznik czasu w sekundach. Późniejsze operacje proste jak i skomplikowane są b. łatwe ;)
Krzysztof
P.
Programista, Team
Leader
Temat: Operacje na dacie
Marcin Tarapata:
Takie małe [OT]
Dobrze zakładasz, ale... :)
Dla przykładu duży system Siebel wykorzystuję BD tylko do trzymania danych w tabelach, cała logika aplikacji jest zaszyta w systemie. Co nam to daje? Taki system można przenosić pomiędzy MS SQL, Oracle, Informix (stare wersje Siebla podobno można było uruchomić na MySQLu) itd. nie martwiąc się o relacje, triggery, procedury itp.
Jak widać, można różnie podejść do projektowania aplikacji :)
Jeszcze chwilę pociągnę to małe OT.
Wiesz, moim zdaniem powinno się w tedy zrobić, że to na warstwie która działa na abstrakcji bazy jest to zaszyte (czy nawet w takiej abstrakcji), wtedy zależnie czy można, czy też nie wykorzystuje natywne mechanizmy bazy, lub je symuluje.
To nie było by łatwe, ale na pewno dało by najlepszy skutek.
Zrobić to tak, że dla osoby korzystającej jest nie wiadome, czy klucz referencyjny jest na poziomie bazy czy aplikacji, po prostu z niego korzysta. Taki mocniej rozbudowana abstrakcja bazy, dodatkowo dla wspieranych wersji trzeba było by deklarować czy dana funkcja jest dostępna czy nie, jak jest to trzeba to jakoś napisać.
Ale ogólnie rozumiem jakie są założenia, tylko że w przypadku daty to nie ma chyba bazy która by tego nie obsłużyła.
konto usunięte
Temat: Operacje na dacie
Michał Czerwiński:
Najcześciej robie tak, ze przechowuje date jako unixowy znacznik czasu w sekundach. Późniejsze operacje proste jak i skomplikowane są b. łatwe ;)
ja tak samo ;]
zawsze trzymam tylko STAMP w bazie.
nigdy sformatowaną datę.
Zbigniew
R.
Kierownik Działu IT,
SKOK Kujawiak
Temat: Operacje na dacie
Marcin Tarapata:
Michał S.:
Ja bym założył, że wbudowana funkcja SQL działa szybciej... ale to pewnie tylko moje zdanie.
(może za dużo triggerów napisałem i się przyzwyczaiłem do programowania też na poziomie bazy)
Takie małe [OT]
Dobrze zakładasz, ale... :)
Dla przykładu duży system Siebel wykorzystuję BD tylko do trzymania danych w tabelach, cała logika aplikacji jest zaszyta w systemie. Co nam to daje? Taki system można przenosić pomiędzy MS SQL, Oracle, Informix (stare wersje Siebla podobno można było uruchomić na MySQLu) itd. nie martwiąc się o relacje, triggery, procedury itp.
Jak widać, można różnie podejść do projektowania aplikacji :)
No właśnie. Wszystko zależy od przyjętych założeń. Zawsze zastanawiało mnie co jest bardziej poprawne - budowanie aplikacji tak aby rozwiązanie było przenośne pomiędzy różnymi bazami danych czy może skupienie się na konkretnej bazie, i tym samym pełne wykorzystanie tego co oferuje. W końcu licencja na komercyjną bazę danych kosztuje niemało więc dlaczego w pełni nie wykorzystać to za co się zapłaciło?
konto usunięte
Temat: Operacje na dacie
Kuba Świegot:
Michał Czerwiński:
Najcześciej robie tak, ze przechowuje date jako unixowy znacznik czasu w sekundach. Późniejsze operacje proste jak i skomplikowane są b. łatwe ;)
ja tak samo ;]
zawsze trzymam tylko STAMP w bazie.
nigdy sformatowaną datę.
TIMESTAMP używa się do "bieżących" dat, uwarunkowanych jego zakresem, do szerszych zastosowań należy stosować DATETIME, który ma nieco ;) większy zakres..
http://dev.mysql.com/doc/refman/5.1/en/datetime.html
Piotr
Lewandowski
Programista
aplikacji
internetowych (PHP,
MySQL, SF2, Mag...
Temat: Operacje na dacie
Nikodem Kler:
Kuba Świegot:
Michał Czerwiński:
Najcześciej robie tak, ze przechowuje date jako unixowy znacznik czasu w sekundach. Późniejsze operacje proste jak i skomplikowane są b. łatwe ;)
ja tak samo ;]
zawsze trzymam tylko STAMP w bazie.
nigdy sformatowaną datę.
TIMESTAMP używa się do "bieżących" dat, uwarunkowanych jego zakresem, do szerszych zastosowań należy stosować DATETIME, który ma nieco ;) większy zakres..
http://dev.mysql.com/doc/refman/5.1/en/datetime.html
Domyslam sie, ze Jakub przechwouja date w sekundach i zapisuje ja np. w polu integer. Aczkolwiek moge sie mylic ;)
Temat: Operacje na dacie
Piotr Lewandowski:Aczkolwiek mozesz wyjasnic o co ci chodzi? Bo ja tez sadze, ze najlepiej, najoptymalniej i najprosciej zapisywiac date w bazie jako uniksowe sekundy (date('U') w polu typu int(11).
Nikodem Kler:
Kuba Świegot:
Michał Czerwiński:
Najcześciej robie tak, ze przechowuje date jako unixowy znacznik czasu w sekundach. Późniejsze operacje proste jak i skomplikowane są b. łatwe ;)
ja tak samo ;]
zawsze trzymam tylko STAMP w bazie.
nigdy sformatowaną datę.
TIMESTAMP używa się do "bieżących" dat, uwarunkowanych jego zakresem, do szerszych zastosowań należy stosować DATETIME, który ma nieco ;) większy zakres..
http://dev.mysql.com/doc/refman/5.1/en/datetime.html
Domyslam sie, ze Jakub przechwouja date w sekundach i zapisuje ja np. w polu integer. Aczkolwiek moge sie mylic ;)
Marcin
Laber
internet
technologies
magician
Temat: Operacje na dacie
A dlaczego w takim np. MySQLu miałbyś zapisywać datę do pola typu INT mając pole typu DATETIME, dzięki któremu większość operacji związanych z datami można wykonać na poziomie zapytania SQL, a na dodatek ze zwrotem uniksowego znacznika czasu też nie byłoby żadnego problemu (UNIX_TIMESTAMP())? Zawsze mnie śmieszył zapis daty do INT'a...konto usunięte
Temat: Operacje na dacie
Marcin Laber:
A dlaczego w takim np. MySQLu miałbyś zapisywać datę do pola typu INT mając pole typu DATETIME, dzięki któremu większość operacji związanych z datami można wykonać na poziomie zapytania SQL, a na dodatek ze zwrotem uniksowego znacznika czasu też nie byłoby żadnego problemu (UNIX_TIMESTAMP())? Zawsze mnie śmieszył zapis daty do INT'a...
Zapewne dlatego, że baza jest wtedy traktowana jedynie jako magazyn danych, a cała logika jest poza nią. Wykorzystanie bazy sprowadza się do SELECT * WHERE id=... .
Wojciech
Sznapka
CTO @ STS Zakłady
Bukmacherskie
Temat: Operacje na dacie
Swoją drogą, ile razy zdażyło wam się przenosić dużą aplikację z jednego typu bazy na drugą ?
Waldemar
Jonik
właściciel,
webmaster,
programista, JW Web
Development
Temat: Operacje na dacie
osobiscie wole zapisywac date mysq w postaci pola datetime z tego wzgledu ze czesto musze podgladac dane takimi narzedzaimi jak np phpmyadmin i zapis wprost daty jest wtedy czytelniejszy, latwiej sledzic takie rekordy, latwiej tez to wyeksportowac np excel czy innych formatow bez zastanawiania sie, mniejsze prawdopodobienstwo ze zapomni sie o tym aby pzeksztalcic date na czytelny format zapisu
Zbigniew
R.
Kierownik Działu IT,
SKOK Kujawiak
Temat: Operacje na dacie
Chyba każdy silnik bazodanowy posiada wbudowane typy daty i jej obsługi. Ze względów wydajnościowych należy wykonywać operacje na bazie danych wykorzystując w jak największym stopniu natywne mechanizmy dostępu do danych/ich obróbki.- 1
- 2
Podobne tematy
Następna dyskusja: