如何使用TSQL将文件上载到SQL Server 2008中的varbinary(max)列?

问题描述:

这一定是可能的,因为我相信我以前做过。这里是我的查询:如何使用TSQL将文件上载到SQL Server 2008中的varbinary(max)列?

insert into exampleFiles Values(NEWID(), cast('c:\filename.zip' as varbinary(max)) 

显然,仅仅插入文本引号,而不是从该位置的文件之间。必须有一个我忘记的简单的tsql语言位。谢谢

这有帮助吗?

USE AdventureWorks 
GO 
CREATE TABLE myTable(FileName nvarchar(60), 
    FileType nvarchar(60), Document varbinary(max)) 
GO 

INSERT INTO myTable(FileName, FileType, field_varbinary) 
    SELECT 'Text1.txt' AS FileName, 
     '.txt' AS FileType, 
     * FROM OPENROWSET(BULK N'C:\Text1.txt', SINGLE_BLOB) AS Document 
GO 

从这里摘自: http://social.msdn.microsoft.com/Forums/en-US/sqltools/thread/513cbf8c-21a8-4bcc-a565-6eb06437a398

+1

是它确实有助于! – Fazi 2014-01-15 15:02:12

+2

应该提到的是,在OPENROWSET函数列的名称为BulkColumn。所以你可以在你的查询中使用document.BulkColumn而不是*。 – 2015-09-30 11:59:40

+0

那么如何在查询中插入多个文件? – 2018-03-02 12:43:50