Výběr vhodných datových typů
SQL Server nabízí širokou škálu datových typů, ze které si můžete vybrat, a vaše volba může ovlivnit výkon mnoha způsoby. I když SQL Server dokáže převést některé datové typy automaticky (říkáme tomu implicitní převod), převod může být nákladný a může také negativně ovlivnit plány dotazů. Alternativou je explicitní převod, kdy pomocí funkce CAST nebo CONVERT v kódu vynutíte převod datového typu.
Kromě toho výběr datových typů, které jsou mnohem větší, než je potřeba, může způsobit plýtvání místem a vyžadovat více stránek, než je nutné číst. Je důležité zvolit správné datové typy pro danou sadu dat– což sníží celkové úložiště potřebné pro databázi a zlepší výkon spuštěných dotazů.
Poznámka:
V některých případech nejsou převody vůbec možné. Například datum nelze převést na bit. Převody můžou negativně ovlivnit výkon dotazů tím, že způsobí, že vyhledávání indexů by bylo možné, a další režijní náklady na procesor ze samotného převodu.
Následující obrázek označuje, v jakých případech může SQL Server provést implicitní převod a v jakých případech je nutné explicitně převést datové typy v kódu.
SQL Server nabízí sadu systémových datových typů určených pro všechna data, která je možné použít v tabulkách a dotazech. SQL Server umožňuje vytváření uživatelsky definovaných datových typů v T-SQL nebo rozhraní .NET Framework.