nisfarm.ru

Jak používat v MySQL: časové razítko a datetime

MySQL dává vývojáři schopnost pracovat s časem různými způsoby. Existují typy dat pro popis polí v tabulkách. V dotazech je mnoho funkcí. Dostupná dočasná lokalizace a změna časových pásem v relacích, nastavení MySQL a použití času operačního systému.

Časové razítko MySQL

Odpovědnost za použití datových typů a změnu časových pásem spočívá na vývojáři, který musí vzít v úvahu čas a čas serveru. Ne vždy se shodují.

Popis tabulek s časovými poli

Příklad popisuje tři způsoby reprezentace času. Two - typ MySQL časové razítko (start_timestamp, next_timestamp), jedno - jako je MySQL datetime (start_datetime) a možnost uživatele ve formě řetězce znaků (work_income).

Příkladem autora není obrázek




timestamp Typ - je domácí události časově ražení formátu MySQL je 8 bytů, je celé číslo a má navíc jednu zvláštnost: v prvním sloupci je vyplněn automaticky v okamžiku vytvoření: Žádost (1). Druhý a všechny následující - zůstanou nulové, ale to není NULL. Dotaz (2) obsahuje funkci časové značky MySQL now (), která byla použita k naplnění pole start_datetime.

Příkladem autora není obrázek

Tento příklad ukazuje, že tabulka vytvoří požadavek (1, vytvoření tabulky) vyplní první sloupec stroje start_timestamp při vytvoření tabulky. Dotaz (2, vyplnění tabulky) ukazuje, že tomu tak je. V tomto případě, druhý sloupec je nula next_timestamp: všechna data a časy jsou zastoupeny složky „0“ ve všech polohách, ale to není NULL, celé pole jako celek.

Pokud žádost o odebrání odkazu na pole start_datetime a funkci, která je nyní (), pole start_datetime bude obsahovat hodnotu NULL. Horní část obrázku ukazuje tabulku pomocí funkce výplně, dolní část tabulky bez použití (). Rozdíly jsou významné.

Unix čas a uživatelský čas

Polí tabulky časové razítky MySQL datumtime se liší v plnění a použití. Například možnost:

  • int mktime ([int hodiny [, int minut [, int sekunda, ...

je k dispozici pro pole typu datetime, zatímco pole časové značky je více orientováno na funkce samotného jazyka MySQL.

Aby bylo možné použít časový plán nejefektivnější a bezpečné, je vhodné se zaměřit na způsob, jak pracovat s MySQL časové razítko v navrženém funkcí, včetně jeho účelu, jak je definováno v databázi sám. Je to její vlastní časová známka, formát časové reprezentace.

MySQL časové razítko nyní

Typ Datetime označuje čas v zastoupení Unix epochy, a to může být spojeno například s funkcí PHP mktime () nebo prostý textovém formátu, například:

Příkladem autora není obrázek

Zde proměnná $ cStndDate je prostý text, který je interpretován v dotazu jako něco napsaného ve formátu datum / čas. Pokud je proměnná zadána správně, je požadovaná hodnota zapsána do požadovaného pole tabulky.

Doba uživatele je požadavek na úkol. Není vždy nutné předkládat do databáze všechna práva na časové řízení. Vždy dělá všechno svým způsobem. Není to vždy správné, potřebujeme například názvy ruských měsíců nebo zvláštní objednávku pro zaznamenávání dne, měsíce a roku.

Časové pásma a správná logika

Práce s časovou značkou MySQL datetime vyžaduje péči a přesnost. Další věc - vlastní datum formátu, psané v prostém textu. Je pravda, že v tomto případě se ztratí výhody standardních typů dat, například třídění nebo výpočet dat, ale objeví se požadované výhody.

mysql časové razítko

V každém případě by vývojář měl být velmi opatrný. Časové zóny, nastavení lokalizace a mnoho dalších nuancí mohou vytvořit určité nedorozumění. Pokud se něco stane při práci s datem s NULL nebo nulami ve všech pozicích, musíte nejprve hledat chybu ve svém vlastním algoritmu. MySQL, data pole a časové funkce pracují mimořádně stabilně a správně.

Sdílet na sociálních sítích:

Podobné
© 2021 nisfarm.ru