http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 3573|回复: 0

[Sql Server] binary 和 varbinary (Transact-SQL)

[复制链接]
发表于 2012-11-27 11:15:09 | 显示全部楼层 |阅读模式
                                       binary 和 varbinary (Transact-SQL)
固定长度或可变长度的 Binary 数据类型。
binary [ ( n ) ]
    长度为 n 字节的固定长度二进制数据,其中 n 是从 1 到 8,000 的值。 存储大小为 n 字节。
varbinary [ ( n | max) ]
    可变长度二进制数据。 n 的取值范围为 1 至 8,000。 max 指示最大存储大小是 2^31-1 个字节。 存储大小为所输入数据的实际长度 + 2 个字节。 所输入数据的长度可以是 0 字节。 varbinary 的 ANSI SQL 同义词为 binary varying。
注释
如果没有在数据定义或变量声明语句中指定 n,则默认长度为 1。 如果没有使用 CAST 函数指定 n,则默认长度为 30。
如果列数据项的大小一致,则使用 binary。
如果列数据项的大小差异相当大,则使用 varbinary。
当列数据条目超出 8,000 字节时,请使用 varbinary(max)。
转换 binary 和 varbinary 数据
当数据从字符串数据类型(char、varchar、nchar、nvarchar、binary、varbinary、text、ntext 或 image)转换为不同长度的 binary 或 varbinary 数据类型时,SQL Server 将在数据的右侧填充或截断数据。 从其他数据类型转换为 binary 或 varbinary 时,将在数据的左侧填充或截断数据。 填充将通过使用十六进制的零来完成。
如果 binary 数据是最容易来回移动的数据,则将数据转换为 binary 和 varbinary 数据类型很有用。 将任一类型的任一值转换为足够大的二进制值,然后转换回原类型时,如果两次转换都是在相同的 SQL Server 版本上进行的,将始终生成相同的值。 值的二进制表示形式在不同 SQL Server 版本之间可能会有所不同。
可以将 int、smallint 和 tinyint 转换为 binary 或 varbinary,但是如果将 binary 转换回整数值,则在发生了截断的情况下此值将不同于原始整数值。 例如,以下 SELECT 语句显示整数值 123456 通常被存储为二进制值 0x0001e240:
[code=sql]SELECT CAST( 123456 AS BINARY(4) );[/code]
但是,以下 SELECT 语句显示如果 binary 目标太小而不能保存整个值,则前导数字会被自动截断,以使该数值存储为 0xe240:
[code=sql]SELECT CAST( 123456 AS BINARY(2) );[/code]
以下批处理显示,这种自动截断会影响算术运算而不产生错误:
[code=sql]DECLARE @BinaryVariable2 BINARY(2);
SET @BinaryVariable2 = 123456;
SET @BinaryVariable2 = @BinaryVariable2 + 1;
SELECT CAST( @BinaryVariable2 AS INT);
GO[/code]
最终结果为 57921,而不是 123457。
注意注意
不能保证在 SQL Server 各个版本之间对任一数据类型与 binary 数据类型进行转换的结果是一致的。


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-18 06:40

© 2014-2021

快速回复 返回顶部 返回列表