TSQL插入带有bulkcolumn的表 - 需要将两个bulkcolumn插入到同一行中

时间:2017-07-07 16:24:41

标签: tsql insert jpeg bulk-load image-load

TSQL插入带有bulkcolumn的表 - 需要两个bulkcolumn插入到同一行

我需要运行一个带有两个bulkcolumn插入到同一行的查询。

我在尝试:

然而,我收到错误:无效的对象名称'BulkColumn' 这只是一个语法问题,还是一个更基本的规则(例如每个语句只能插入一个bulkcolumn)?

实施例: 在SSMS编辑窗口中。

INSERT INTO [table1] ([id1], [bulk1],[bulk2] 
SELECT '123',
 BulkColumn 
FROM Openrowset( Bulk 'C:\bulkDir1\a1.jpg', Single_Blob) as a1,
BulkColumn 
FROM Openrowset( Bulk 'C:\bulkDir2\b1.jpg', Single_Blob) as a2

它说(在SSMS编辑窗口中的'波浪错误') 无效的对象名称'BulkColumn'

1 个答案:

答案 0 :(得分:1)

你可以这样做,你的语法只需要一点点来获得两列:

CREATE TABLE table1(id1 nvarchar(60),   
  [bulk1] varbinary(max), [bulk2] varbinary(max));  
GO  

INSERT INTO table1([id1], [bulk1],[bulk2])   
   SELECT 
    '123' AS FileName,    
     pic1.BulkColumn ,
     pic2.BulkColumn
  FROM OPENROWSET(BULK N'C:\test\a1.jpg', SINGLE_BLOB) AS pic1
  inner join OPENROWSET(BULK N'C:\test\b1.jpg', SINGLE_BLOB) AS pic2
    on 1=1