Změny

Přejít na: navigace, hledání
[[Category:Články]]
 =Datové typy v PostgreSQL pro práci s datumem a časem=Autor: ''Pavel Stěhule''
Před vánocemi mne jeden ze čtenářů požádal o doplnění mého [http://postgres.cz/files/tahak_postgresql-10.pdf taháku]
ještě jednou prošel dokumentaci, a musím uznat,že na pár temných zákoutí jsem narazil, a v následujícím textu
se je budu snažit popsat a osvětlit.
 
Postgres pro práci s časem používá čtyři typy: <code>date</code>, <code>time</code>, <code>timestamp</code> a <code>interval</code>. Když se podíváte na následující
tabulku, tak doufám, že se mnou souhlasíte, že jsou nadimenzovány více než dostatečně. Žádné opakování problému
roku 2000 nehrozí.
{|class="wikitable"
| ±178M let
|}
 
Postgres pro práci s časem používá čtyři typy: <code>date</code>, <code>time</code>, <code>timestamp</code> a <code>interval</code>. Když se podíváte na následující
tabulku, tak doufám, že se mnou souhlasíte, že jsou nadimenzovány více než dostatečně. Žádné opakování problému
roku 2000 nehrozí.
==Date==
Typ timestamp with time zone (s časovou zónou) si zaslouží podrobnější popis. Jeho použití není ve všech situacích
intuitivní. Ačkoliv by název napovídal něco jiného, zadaná časová zóna se nikam neukládá. Místo toho se ukládaná časová
hodnota převádí do časové zóny <a href="[https://cs.wikipedia.org/wiki/Koordinovan%C3%BD_sv%C4%9Btov%C3%BD_%C4%8Das"><i>''UTC</i></a> ] (Londýn). Při zobrazení se vždy provede konverze z časové zóny UTC do časové zóny
klienta (viz konfigurační proměnná <code>timezone</code>). Při uložení se odečte interval odpovídající zadané časové zóně (případně
se použije časová zóna klienta). Při zobrazení se naopak přičte. Pokud se díváme na hodnotu typu timestamp with time zone,
==Práce s časovými zónami, změna času==
[[Wikipedia:Time zone|Časová zóna]], časové pásmo je část země, která používá stejný standardní čas. Základním časovým pásmem je pásmo
ve kterém platí koordinovaný světový čas (UTC). Toto pásmo se rozkládá kolem nultého poledníku, který
prochází Královskou observatoří v Greenwichi. Z tohoto důvodu se tomuto pásmovému času také říká GMT.
Ostatní časová pásma jsou popsána rozdílem počtu hodin, o kolik se v nich liší čas od UTC. Např.
středoevropský čas CET (česky SEČ) je označen jako UTC+1 (čas je oproti UTC posunutý o hodinu napřed)<a href="https://cs.wikipedia.org/wiki/%C4%8Casov%C3%A9_p%C3%A1smo">[Zdroj]</a>.
Pokud pracujeme s časem, můžeme pracovat s lokálním časem nebo časem specifikovaným vůči konkrétní časové
Správce, byrokrat, editor, reviewer
1 717
editací