【发布时间】:2011-04-12 03:13:07
【问题描述】:
我有一个带有VARBINARY(MAX) 字段的表(带有FILESTREAM 的SQL Server 2008)
我的要求是,当我去部署到生产环境时,我只能为我的 IT 团队提供一组 SQL 脚本,按一定的顺序执行。我在生产中制作的一张新表有这个VARBINARY(MAX) 字段。通常对于新表,我会编写 CREATE TABLE 脚本。而且,如果我有需要处理的数据,我将编写 INSERT 脚本。不太复杂。
但是对于VARBINARY(MAX),我用来生成INSERT 语句的存储过程在该表上失败了。我尝试选择该字段,打印它,复制它,转换为十六进制等。我遇到的主要问题是它没有选择该字段中的所有数据。我检查了DATALENGTH([FileColumn]),如果源行包含 1,004,382 字节,我在再次插入时可以获得复制或选择的数据的最大值是 8000。所以基本上它被截断(即无效)数据.....
我怎样才能做得更好?我像疯了一样尝试谷歌搜索,但我一定错过了一些东西。请记住,我无法访问文件系统。这必须全部编写脚本。
【问题讨论】:
标签: sql-server tsql sql-server-2008 varbinary sqlfilestream