Microsoft SQL Server podporuje sedm odlišných kategorií dat. Z nich binární řetězce umožňují zakódované údaje představované jako binární objekty.
Datové typy v kategorii binárních řetězců zahrnují:
- bitové proměnné ukládají jeden bit s hodnotou 0, 1 nebo NULL .
- binární (n) proměnné ukládají n bajtů binárních dat s pevnou velikostí. Tato pole mohou ukládat maximálně 8 000 bajtů.
- varbinary (n) proměnné ukládají binární data s proměnnou délkou přibližně n bajtů. Mohou ukládat maximálně 8 000 bytů.
- varbinary (max) proměnné ukládají binární data s proměnnou délkou přibližně n bajtů. Mohou ukládat maximálně 2 GB a skutečně ukládat délku dat plus dva další bajty.
- obrazové proměnné ukládají až 2 GB dat a běžně se používají k ukládání jakéhokoli typu datového souboru (ne pouze obrázků).
Typ obrázku je naplánován pro odmítnutí v budoucí verzi serveru SQL Server. Inženýři společnosti Microsoft doporučují použití varbinary (max) namísto typů obrázků pro budoucí vývoj.
Vhodné použití
Použijte bitové sloupce, pokud potřebujete uložit ano nebo žádné typy dat reprezentovaných nulami a ty. Použijte binární sloupce, pokud jsou velikosti sloupců poměrně jednotné. Použijte varbinary sloupce, pokud se předpokládá, že velikost sloupce překročí 8 kB nebo může být předmětem výrazné variability velikosti na záznam.
Konverze
T-SQL - varianta SQL používaná v Microsoft SQL Serveru - práva pads při převodu z libovolného typu řetězce na binární nebo varbinární typ. Jakákoli jiná konverze typu na binární typ poskytuje levou podložku. Toto polstrování se provádí pomocí hexadecimálních nul.
Vzhledem k této konverzi a riziku zkrácení, není-li pole po konverzi dostatečně velké, je možné, že převedená pole mohou mít za následek aritmetické chyby, aniž by došlo k chybovému hlášení.