SQL Server 2008 R2 Varbinary 最大大小

2023-11-27

在 SQL Server 2008 R2 中使用 varbinary(max) 可以插入的文件的最大大小是多少?我试图将列中的最大值更改为超过 8,000 字节,但它不允许我这样做,所以我猜测最大值是 8,000 字节,但是从MSDN 上的这篇文章,它表示最大存储大小为 2^31-1 字节:

瓦尔二进制 [ ( n | max) ]

可变长度二进制数据。 n 可以是 1 到 8,000 之间的值。max表示最大存储大小为2^31-1字节。存储大小为输入数据的实际长度+2字节。输入的数据长度可以是 0 字节。 ANSI SQL 同义词为瓦尔二进制 is 二进制变化.

那么如何在 varbinary 字段中存储更大的文件呢?我不考虑使用 FILESTREAM,因为我想要保存的文件最大大小为 200kb 到 1mb,我正在使用的代码:

UPDATE [table]
SET file = ( SELECT * FROM OPENROWSET ( BULK 'C:\A directory\A file.ext', SINGLE BLOB)    alias) 
WHERE idRow = 1

我已经能够成功地对小于或等于 8000 字节的文件执行该代码。如果我尝试使用 8001 字节大小的文件,它将失败。我的表上的文件字段有一个名为“文件”类型的字段varbinary(8000)正如我所说,我无法更改为更大的值。


我无法重现这个场景。我尝试了以下方法:

USE tempdb;
GO

CREATE TABLE dbo.blob(col VARBINARY(MAX));

INSERT dbo.blob(col) SELECT NULL;

UPDATE dbo.blob 
  SET col = (SELECT BulkColumn 
    FROM OPENROWSET( BULK 'C:\Folder\File.docx', SINGLE_BLOB) alias
  );

SELECT DATALENGTH(col) FROM dbo.blob;

Results:

--------
39578

如果上限为 8K,那么我猜测以下任一情况为真:

  1. 该专栏实际上是VARBINARY(8000).

  2. 您正在 Management Studio 中选择数据,并分析其中显示的数据的长度。结果到文本的最大字符数限制为 8192 个字符(如果是这种情况),因此使用DATALENGTH()直接针对柱子是更好的方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL Server 2008 R2 Varbinary 最大大小 的相关文章

随机推荐

  • 为什么 React hooks 以这种方式命名为 useXXX? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我一直想知道 React hooks 的命名 例如 useEffect 它的名称如何暗示像 componentDidUpdate 或 componentDidMount 之类的东西 它相当
  • Django Rest Framework 如何发布日期字段

    我想发布带有字段的 JSON 请求date date 2015 02 11T00 00 00 000Z 它的字符串是自动转换而来的Date对象 我不想裁剪该部分T00 00 00 000Z在前端手动 但是如果我发布这样的请求 DateFie
  • 如何使用 inotifywait 来查看文件夹中的文件而不是文件夹中的文件

    我想使用 inotifyway 来监视文件夹中新创建或移动的文件 但仅限于文件 假设我的文件夹名称为 watched folder test 文件名为 toto txt 如果我使用 mv 命令将文件移动到 Watched folder te
  • RegularExpressionValidator 上用于检查文本框文本长度是否为 6 个或更多字符的表达式是什么?

    RegularExpressionValidator 控件检查要验证的文本框是否包含 6 个或更多字符的格式是什么 6 会在正则表达式的大多数变体中执行此操作 让我验证它在这个特定情况下是否有效 编辑 我想它有效
  • Python sys.argv 保留 ' ' 或 ""

    终端 python test py blah blah 在测试 py中 print sys argv test py blah blah lt blah arg 如何保留其 或有没有办法知道 arg 是否用 或 包裹 Your shell在
  • 如何在 Angular 6 中动态添加输入字段

    我需要将输入字段添加到对象数组和根据用户选择动态增长的地图 例如InputForm有一个列表和一张需要用户填写的地图 export class InputForm mapA listA ListA export class ListA in
  • 如何确定 ThreadPool 队列中的项目数

    我正在使用 ThreadPool 对 1000 个工作项进行排队 While reading in data for processing args some data that has been read ThreadPool Queue
  • 句子的 RDF 表示

    我需要以 RDF 格式表示句子 换句话说 约翰喜欢可乐 将自动表示为 Subject John Predicate Likes Object Coke 有谁知道我应该从哪里开始 是否有任何程序可以自动执行此操作 或者我需要从头开始执行所有操
  • Monodroid Javascript 回调

    我正在尝试使用 monodroid 和 webkit 来创建一个应用程序 我在让 html 页面调用 javascript 方法时遇到问题 该方法将是我的应用程序中方法的接口 有一个关于此的教程http developer android
  • 使用 csrf 令牌从 Android 应用程序访问 laravel 应用程序

    我正在学习laravel框架 我已经安装了5 0版本 我将它用于 json api 服务 该服务将在调用特定路由后提供 JSON 输出 如果我从浏览器请求 URL 它效果很好 但是当我尝试从我的 Android 应用程序访问时 它会给出错误
  • 使用 LINQ 从 XML 获取最大属性值

    我有以下内容XML文件 我想要得到Max NR using LINQ 有人可以帮我做到这一点吗 我知道如何对节点执行此操作 但属性让我感到困惑 S
  • 让用户指定 RazorEngine 模板有多危险?

    我有类似邮件合并的功能 它需要一个模板 一些业务对象 并生成 html 然后将其转换为 PDF 我在用着剃刀引擎将模板 模型转换为 html 位 如果我让用户指定模板 我要冒什么风险 是否可以降低任何风险 例如 用户可以执行任意代码吗 删除
  • XOR 问题可以用 2x2x1 神经网络无偏差解决吗?

    如果没有偏差 具有 2 个输入节点 2 个隐藏节点和一个输出的神经网络是否应该能够解决 XOR 问题 或者它会被卡住吗 保留偏差 它不会看到您输入的值 就一对一的类比而言 我喜欢将偏差视为抵消c 直线方程中的值 y mx c 它为您的系统添
  • 使用 Python xlib 在活动 X 窗口发生更改时获取通知

    我想监视运行 X 的 Linux 系统上哪个窗口处于活动状态 以及该活动窗口何时调整大小或移动 我可以监视活动窗口 它位于 NET ACTIVE WINDOW根窗口上的属性 我可以注册PropertyNotify根窗口上的事件以发现该属性何
  • javascript仅打印特定

    我尝试过javascriptwindow print 它打印整页内容 包括页面上的打印按钮 您需要创建新的样式表 print css 并设置CSS media print 例如 欲了解更多详情 使用 CSS 打印文档
  • React-Router v4:无法读取未定义的属性“路由”

    我想在按下按钮时重定向 所以我使用了withRouter获取历史道具的访问权限 但我收到错误 Uncaught TypeError Cannot read property route of undefined at Route compu
  • 查找 java.net.SocketException:没有可用的缓冲区空间

    嗨 我有一个非常丑陋的问题 java net SocketException 没有可用的缓冲区空间 已达到最大连接数 它是客户端 服务器应用程序 客户端是Windows XP SP2 32b 有两个网卡核心双核 Java 1 6 u7 应用
  • 通过相关模型 django 进行过滤

    如何通过相关模型生成query set 例如 我该怎么做 UserProfile objects filter user is active True Can t use user is active to filter 琐碎的问题 琐碎的
  • 使用 Java 8 可选的 Mapstruct

    我有这两门课 public class CustomerEntity Id GeneratedValue strategy GenerationType IDENTITY private long id private String fir
  • SQL Server 2008 R2 Varbinary 最大大小

    在 SQL Server 2008 R2 中使用 varbinary max 可以插入的文件的最大大小是多少 我试图将列中的最大值更改为超过 8 000 字节 但它不允许我这样做 所以我猜测最大值是 8 000 字节 但是从MSDN 上的这