问题描述
id (int),Name (varchar),Column_Vb (Varbinary)
我想使用 BCP
从数据文件中将数据导入到此表中。 Id
和 Name
列包含 id 和名称,但 Column_Vb
(数据类型为 varbinary
)列中的数据包含 blob 文件的位置。>
当我执行 BCP IN
命令时,我想将指定位置的 blob 文件加载到表中,但不是将位置名称写入表中。
有没有办法通过 BCP
将这些 blob 文件加载到 varbinary
列中?
我已经尝试过格式化文件,但它不起作用。由于数据量很大,我需要一个批量导入选项本身。
解决方法
我以前使用 Azure 执行过此操作。没有 Azure,只是一个猜测,但也许是这样的。
CREATE TABLE [dbo].[TestBlob](
[tbId] [int] IDENTITY(1,1) NOT NULL,[tbName] [varchar](50) NULL,[tbDesc] [varchar](100) NULL,[tbBin] [varbinary](max) NULL
) ON [PRIMARY]
Insert TestBlob(tbName,tbDesc,tbBin) Select
'81.pdf','PDF file',BulkColumn from Openrowset( Bulk
'C:\blob\udoc\81.pdf',Single_Blob) as tb
Insert TestBlob(tbName,tbBin) Select 'mountain.jpg','Image
jpeg',BulkColumn from Openrowset( Bulk 'C:\blob\udoc\mountain.jpg',Single_Blob) as tb
Insert TestBlob(tbName,tbBin) Select 'Questionnaire.docx','Doc
Question',BulkColumn from Openrowset( Bulk
'C:\blob\udoc\Questionnaire.docx',tbBin) Select 'txpeng542.exe','Texpad
Exe',BulkColumn from Openrowset( Bulk 'C:\blob\udoc\txpeng542.exe',Single_Blob) as tb
有关详细信息,请参阅下面的链接。
https://sqlrambling.net/2020/04/04/saving-and-extracting-blob-data-basic-examples/