Dit is de situatie voor 4.1
http://dev.mysql.com/doc/...en/timestamp-pre-4-1.html
Dit is de situatie vanaf 4.1
http://dev.mysql.com/doc/refman/4.1/en/timestamp-4-1.html
Wijzigingen genoeg toch? (Het feit alleen al dat ze daar twee hele pagina's aan wijden lijkt me genoeg te zeggen)
Daar in de manual staan nog veel meer wijzigingen opgenoemd.
Zie bijvoorbeeld
http://dev.mysql.com/doc/...n/upgrading-from-4-0.html
Voordeel van een Unix timestamp is dat het altijd overal hetzelfde is en al jaren hetzelfde is.
Een Unix timestamp is een hele doeltreffende manier om een punt in de tijd te defineren door gewoon de afstand tot een ander punt in de tijd te noemen.
Hierdoor ben je onafhankelijk van tijdzones, wintertijd, zomertijd etc.
Maar je bent ook volledig onafhankelijk van een bepaalde kalender, je kunt een Unix timestamp gemakkelijk uitdrukken in iedere andere kalender, dat is dus een duidelijke scheiding van data en representatie van de data.
Doordat rekenen met timestamps erg eenvoudig is kan MySQL er ook goed mee rekenen, mocht je alsnog iets nodig hebben van de native functies dan is het met de UNIX_TIMESTAMP() en FROM_UNIXTIME() in no-time omgezet naar een native formaat.
In PHP wordt ook (voor PHP5) voornamelijk met Unix timestamps gewerkt, er is dan dus geen conversie nodig bij verwerking van de datum vanuit het native type in MySQL naar de timestamp. Doordat MySQL er ook goed mee overweg kan is ook daar geen conversie nodig.
En hoezo heeft het ODBC verhaal er niets mee te maken? Het is een voorbeeld van typisch gedrag van de MySQL organisatie wanneer het aankomt op het hele time/date verhaal. Namelijk van versie naar versie het gedrag omgooien wat gewoon geld kost. Het was dan ook de druppel die de emmer deed overlopen. Een timestamp is altijd al hetzelfde geweest en gaat ook echt niet veranderen.
Wat dus absoluut niet wil zeggen dat je geen goede software
kunt maken met het native type van MySQL. Met een wrapper er omheen kom je amper problemen tegen bij het upgraden, je hoeft enkel de wrapper aan te passen. Maar het is natuurlijk wat eenvoudiger software te schrijven zonder voor ongeveer alles wat er is een wrapper te hoeven schrijven.
Maar als jij graag het native type gebruikt moet je dat helemaal zelf weten, wil niet zeggen dat het niet aan te raden is ivm compatibiliteit om gewoon de unix timestamps te gebruiken.
Na 4.1.2 lijken er overigens weinig zaken meer gewijzigd te zijn, dus voor een upgrade naar 5.x zou dat geen probleem moeten opleveren. Maar er zijn wel meer zaken die niet backwards compatible zijn bij versie 5 dus die overstap is sowieso geen simpele. (Als in alleen ff nieuwe MySQL installeren)
[
Voor 33% gewijzigd door
Verwijderd op 03-05-2007 20:28
]