Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niezamierzone działanie w bazie MySql
Forum PHP.pl > Forum > Bazy danych > MySQL
Rid
Utworzyłem w bazie kolumnę w tabeli:
  1. DATA TIMESTAMP(12) NOT NULL,
,mimmo ,iż nie deklarowałem ,żadnego polecenia dotyczącej tej kolumny,automatycznie zapisała się data w formacie 2010-12-27 16:22:45,tymczasem jak czytałem na stronie że format ten powinien zapisać się:
Cytat
TIMESTAMP(12) RRMMDDGGMMSS
czyli 10-12-27 16:22:45 a odczytany 101227162245.Poza tym dlaczego,mi to zapisało automatycznie tak jak autoincrement,przecież nie wysyłałem ,żadnego zapytania insert do data z poleceniem now().Może to poprzez wartość pola NOT NULL??
Zbychu666
Sprawdź u źródła - w dokumentacji MySQL nie ma nic o możliwości zmiany formatu TIMESTAMP przy definicji tabeli:
http://dev.mysql.com/doc/refman/5.0/en/timestamp.html

Jest natomiast informacja że w starszych wersjach działało to inaczej i przed wersją 4.1 faktycznie była możliwość podawania formatu:
http://dev.mysql.com/doc/refman/4.1/en/tim...mp-pre-4-1.html

Innymi słowy stronka którą podałeś ma jakieś info sprzed 10 lat smile.gif
acainoks
NOT NULL to swoją drogą... snitch.gif
Gdy ja używałem tabel z polem TIMESTAMP aktualizował te pole przy KAŻDYM użyciu wiesza tej tabeli jeżeli tego nie chcesz to używaj DATETIME albo jeszcze inaczej używaj pola INT i zapisuj czas jako UNIX_TIMESTAMP() zawsze możesz to prze-konwertować w PHP do jakiego formatu chcesz.
Rid
Dziękuje bardzo za zainteresowanie-użyłem time(); i zapis do varchar -właśnie chodziło mi o coś nieskonwertowanego.
phpion
Dlaczego nie użyjesz po prostu DATETIME? Po to ten typ danych został stworzony, by go używać. Zaglądając bezpośrednio do bazy danych od razu widzisz co to za data, a nie musisz kombinować z "odkodowaniem". Zawsze po stronie PHP możesz dowolnie przekształcić tą datę poprzez strtotime i date.

Jeśli jednak koniecznie chcesz zapisywać znacznik czasu to typem pola zrób INT, a nie VARCHAR. Będzie to zdecydowanie lepsze rozwiązanie (chociażby ze względu na możliwość wyszukiwania po zakresie czasowym).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.