sql >> Databáze >  >> RDS >> Sqlserver

Porovnání datových typů data a času na serveru SQL

Tento článek poskytuje srovnání datových typů data a času na serveru SQL Server, pokud jde o jejich rozsah, přesnost a velikost úložiště.

Typ dat Rozsah Přesnost Velikost úložiště
datum 0001-01-01

prostřednictvím

9999-12-31

1 den 3 bajty
datetime 1753-01-01

prostřednictvím

9999-12-31

00:00:00

prostřednictvím

23:59:59.997

0,00333 sekund 8 bajtů
datetime2 0001-01-01

prostřednictvím

9999-12-31

00:00:00

prostřednictvím

23:59:59.9999999

100 nanosekund 6 až 8 bajtů*
datetimeoffset 0001-01-01

prostřednictvím

9999-12-31

00:00:00

prostřednictvím

23:59:59.9999999

-14:00

prostřednictvím

+14:00

100 nanosekund 8 až 10 bajtů*
smalldatetime 1900-01-01

prostřednictvím

2079-06-06

00:00:00

prostřednictvím

23:59:59

1 minuta 4 bajty
čas 00:00:00.0000000

prostřednictvím

23:59:59.9999999

100 nanosekund 3 až 5 bajtů*

* Všimněte si, že zde uvedené velikosti úložiště jsou částky uvedené v dokumentaci společnosti Microsoft. Tyto datové typy však také používají 1 bajt k uložení přesnosti. Proto přidejte 1 bajt k částkám zde uvedeným, abyste získali úplnější obrázek o požadavcích na úložiště.

Například velikost úložiště pro datetime2 by se pohybovala od 7 do 9 bajtů, pokud zahrnete bajt navíc.

Převod mezi těmito typy dat

Vzhledem k rozdílům v přesnosti a rozsahu mezi těmito datovými typy musíte být při převodu mezi nimi zvlášť opatrní. Zejména převod z typu s vyšší přesností na typ s nižší přesností může vést ke ztrátě části hodnoty a zaokrouhlení zbývající hodnoty nahoru.

Příklady naleznete v části Převod mezi datovými typy data a času na serveru SQL.


  1. SQLException:Nebyl nalezen žádný vhodný ovladač

  2. SQL – jak transponovat?

  3. Žádná forma ukládání do mezipaměti databáze ke snížení duplicitních databázových dotazů.

  4. Jak chránit své databáze PostgreSQL před kybernetickými útoky pomocí brány SQL Firewall