Dobijanje trenutnog UTC datuma i vremena je uobičajen zahtjev u programiranju, posebno kada se radi s međunarodnim bazama podataka, provjerama servera i vremenski specifičnim upitima. Ovaj koncept je povezan s Koordiniranim univerzalnim vremenom (UTC), atomskom realizacijom Univerzalnog vremena, vremenskog standarda zasnovanog na Međunarodnom atomskom vremenu (TAI) s prijestupnim sekundama dodanim u nepravilnim intervalima kako bi se kompenziralo usporavanje Zemljine rotacije. U ovom članku ćemo istražiti kako dobiti UTC datum servera u SQL serveru.
SQL , što je skraćenica za Structured Query Language (strukturirani jezik upita), je programski jezik koji se koristi za komunikaciju i manipulisanje bazama podataka. Većina svjetskih sistema za upravljanje relacijskim bazama podataka (RDBMS) koristi SQL, uključujući MySQL, MS Access, Oracle, Sybase, MS SQL Server i DB2.
Izjava o problemu
Često, u operacijama baze podataka, postoji potreba da se dobije i radi na trenutnom datumu i vremenu u UTC formatu. Izazov je izdvojiti trenutni UTC datum sa SQL servera. To je zato što su SQL serveri, kao i mnogi drugi serveri, obično konfigurisani prema lokalnom vremenu servera. Stoga, generiranje upita ili izdvajanje podataka na osnovu UTC vremena može biti malo nezgodno, posebno ako se server nalazi u drugoj vremenskoj zoni.
rastvor
Da bismo dobili trenutni datum i vrijeme u UTC formatu na SQL serveru, koristit ćemo ugrađenu funkciju GETUTCDATE(). Ova funkcija vraća trenutnu vremensku oznaku sistema baze podataka kao vrijednost datuma i vremena, bez pomaka vremenske zone baze podataka. Ovaj datum i vreme se dobijaju iz operativnog sistema računara na kojem je pokrenuta instanca SQL Servera.
SELECT GETUTCDATE() AS CurrentUTCdate
Kada izvršite ovaj SQL upit, on vraća trenutni UTC datum i vrijeme.
Korak po korak, objašnjenje koda
Razložimo kod radi lakšeg razumijevanja.
- ODABERI: Ova naredba se koristi za odabir podataka iz baze podataka. Vraćeni podaci pohranjuju se u tablicu rezultata, koja se zove skup rezultata.
- GETUTCDATE(): To je ugrađena funkcija SQL servera koja vraća trenutnu vremensku oznaku sistema baze podataka kao vrijednost datuma i vremena bez pomaka vremenske zone baze podataka.
- AS TrenutniUTCdate: “AS” je ključna riječ u SQL-u koja vam omogućava da preimenujete kolonu ili tablicu koristeći pseudonim. Ovdje smo ga koristili za imenovanje skupa rezultata kao CurrentUTCdate.
Povezane funkcije i biblioteke
SQL je opremljen raznim funkcijama za datum i vrijeme koje pomažu u efikasnom manipulisanju i upitima nad podacima. `GETDATE()`, `DATEADD()`, `DATEDIFF()`, `CONVERT()` i `DATEPART()` su samo neke od njih. Nadalje, postoji širok spektar biblioteka koje pomažu u manipulaciji podacima i vremenom, kao što su Joda-Time, Date-fns, Moment.js u JavaScriptu.
Razumijevanje i korištenje UTC datuma i vremena može zaista globalizirati način na koji obrađujemo podatke održavajući vrijeme dosljednim na svim serverima bez obzira na njihovu geografsku lokaciju. Shvatanjem upotrebe funkcija kao što je GETUTCDATE() u SQL-u, možemo napraviti korak ka stvaranju univerzalnih, efikasnih i svestranih programa.
