Získání aktuálního data a času UTC je běžným požadavkem v programování, zejména při práci s mezinárodními databázemi, kontrolami serverů a časově specifickými dotazy. Tento koncept souvisí s koordinovaným světovým časem (UTC), atomovou realizací světového času, časového standardu založeného na mezinárodním atomovém čase (TAI) s přestupnými sekundami přidávanými v nepravidelných intervalech, aby se kompenzovalo zpomalující se rotaci Země. V tomto článku prozkoumáme, jak získat datum UTC serveru na serveru SQL.
SQL, což je zkratka pro Structured Query Language, je programovací jazyk, který se používá ke komunikaci a manipulaci s databázemi. Většina světových systémů pro správu relačních databází (RDBMS) používá SQL, včetně MySQL, MS Access, Oracle, Sybase, MS SQL Server a DB2.
Problémové prohlášení
Často je v databázových operacích potřeba získat a pracovat s aktuálním datem a časem ve formátu UTC. Úkolem je extrahovat aktuální datum UTC ze serveru SQL. Důvodem je, že SQL servery, stejně jako mnoho jiných serverů, jsou obvykle konfigurovány na místní čas serveru. Generování dotazů nebo extrahování dat na základě času UTC proto může být trochu složitější, zvláště pokud se server nachází v jiném časovém pásmu.
Řešení
Pro získání aktuálního data a času ve formátu UTC na SQL serveru použijeme vestavěnou funkci GETUTCDATE(). Tato funkce vrátí aktuální časové razítko databázového systému jako hodnotu datetime, bez posunu časového pásma databáze. Toto datum a čas je získáno z operačního systému počítače, na kterém běží instance SQL Server.
SELECT GETUTCDATE() AS CurrentUTCdate
Když spustíte tento SQL dotaz, vrátí aktuální datum a čas UTC.
Vysvětlení kódu krok za krokem
Pojďme si kód rozebrat pro snazší pochopení.
- VYBRAT: Tento příkaz se používá k výběru dat z databáze. Vrácená data jsou uložena ve výsledkové tabulce, která se nazývá výsledková sada.
- GETUTCDATE(): Je to vestavěná funkce SQL serveru, která vrací aktuální časové razítko databázového systému jako hodnotu datetime bez posunu časového pásma databáze.
- AS CurrentUTCdate: „AS“ je klíčové slovo v SQL, které vám umožňuje přejmenovat sloupec nebo tabulku pomocí aliasu. Použili jsme jej zde k pojmenování sady výsledků jako CurrentUTCdate.
Související funkce a knihovny
SQL je vybavena řadou funkcí pro datum a čas, které pomáhají efektivně manipulovat a dotazovat se na data. `GETDATE()`, `DATEADD()`, `DATEDIFF()`, `CONVERT()` a `DATEPART()` je několik jmen. Kromě toho existuje široká škála knihoven, které pomáhají při manipulaci s daty a časem, jako je Joda-Time, Date-fns, Moment.js v JavaScriptu.
Pochopení a využití data a času UTC může skutečně globalizovat způsob, jakým zpracováváme data, protože udržujeme čas konzistentní na všech serverech bez ohledu na jejich geografickou polohu. Pochopením použití funkcí, jako je GETUTCDATE() v SQL, můžeme udělat krok k vytvoření univerzálních, efektivních a všestranných programů.