如何仅使用sql在SQLServer2005中存储zip?

如何仅使用sql在SQLServer2005中存储zip?,sql,sql-server,sql-server-2005,binaryfiles,Sql,Sql Server,Sql Server 2005,Binaryfiles,我使用的是SQLServer2005,我只能使用ManagementStudio(它是一个暂存/生产服务器)。我需要将本地计算机(服务器)的zip文件保存到blob字段中 我这样做: create table CFile (id int, thefile varbinary(max)) INSERT INTO CFile (id, thefile) SELECT 1, BulkColumn FROM OPENROWSET( Bulk '

我使用的是SQLServer2005,我只能使用ManagementStudio(它是一个暂存/生产服务器)。我需要将本地计算机(服务器)的zip文件保存到blob字段中

我这样做:

create table CFile (id int, thefile varbinary(max))

INSERT INTO CFile
    (id, thefile)
    SELECT 1, 
        BulkColumn FROM OPENROWSET(
            Bulk 'C:\test.zip', SINGLE_BLOB) AS BLOB
还可以,但是当:

SELECT * FROM CFile
我看到了行,但在文件字段中看不到数据,并且不是null(也使用ISNULL函数检查)

有数据,但我看不懂?为什么?我如何再次从ManagementStudio中检索它,至少作为varchar

我试着用

INSERT INTO CFile (id, thefile) VALUES (3,cast('asasdfadsfadsfdsafadsfasdfadsfasdfd' as varbinary))
它起作用了,我可以看到这个领域的内容

这方面的任何帮助或提示都将被珍视


谢谢

我很确定SQL管理查看器没有BLOB查看器。您必须将其保存回文件


您可以使用DATALENGTH(文件)检查该字段是否已加载。

那么您是否考虑以任何方式验证该文件是否已成功加载?我必须检查的唯一方法是管理,因为我没有真正访问服务器的权限(这是第三家公司部署的问题)谢谢:)谢谢Neil N!!是的,使用DATALENGTH()可以工作!你很好:)也许有一种方法可以在服务器上运行MD5 sum?这是一个很好的主意,因为我还可以检查完整性。我会试试这个问题可能会有帮助: