Microsoft SQL Server支持七种不同类别的数据。这些, 二进制字符串 允许表示为二进制对象的编码数据。
二进制字符串类别中的数据类型包括:
- 位 变量存储一个值为0,1或NULL的位。
- 二进制(n)的 变量存储 ñ 固定大小的二进制数据的字节数。这些字段最多可以存储8,000个字节。
- VARBINARY(n)的 变量存储大约的可变长度二进制数据 ñ 字节。它们最多可以存储8,000个字节。
- VARBINARY(最大值) 变量存储大约的可变长度二进制数据 ñ 字节。它们可以存储最多2 GB并实际存储数据长度加上另外两个字节。
- 图片 变量存储最多2 GB的数据,通常用于存储任何类型的数据文件(不仅仅是图像)。
该 图片 类型计划在SQL Server的未来版本中弃用。 Microsoft工程师建议使用 varbinary(最大) 代替 图片 未来发展的类型。
适当的用途
使用 位 列,当您需要存储是或否的数据时,由零和1表示。使用 二进制 列的大小相对均匀时的列。使用 VARBINARY 当列大小预计超过8K时,列可能会受到每个记录大小的显着变化的影响。
转换
T-SQL - Microsoft SQL Server中使用的SQL的变体 - 当您从任何字符串类型转换为a时,右键填充数据 二进制 要么 VARBINARY 类型。任何其他类型转换为二进制类型都会产生左键盘。这种填充是通过使用十六进制零来实现的。
由于此转换和截断的风险,如果转换后字段不够大,转换字段可能会导致算术错误而不会抛出错误消息。