Randolph West hits the archives:
When we look at the several data types for storing LOB data in SQL Server, the ones we might think of first are specifically designed for storing clear text. These are
VARCHAR(MAX)
andNVARCHAR(MAX)
, which you can read up about on Microsoft Docs. They’re variable-length data types that are used to store clear text between 8,000 bytes and 2 GB. The key distinction is thatNVARCHAR
is for Unicode strings, which use at least two bytes per character.Then we get
VARBINARY(MAX)
, also for storing between 8,000 bytes and 2 GB. This data type does not make any assumptions about the stored blob’s format. You can store text, zip files, images, public key security certificates, you name it. If it can be persisted to storage, it can be stored inVARBINARY(MAX)
.
Read on for an example of Randolph using Gzip compression and storing XML data as binary for auditing purposes.