sql-server - 如何使用 bcp 将 blob 文件列表导入 SQL Server
问题描述
我在 SQL Server 中有一个包含 3 列的表:
id (int), Name (varchar), Column_Vb (Varbinary)
我想使用BCP
. 和列包含 idId
和Name
名称,但Column_Vb
(data type is 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, tbDesc, tbBin) Select 'mountain.jpg','Image
jpeg', BulkColumn from Openrowset( Bulk 'C:\blob\udoc\mountain.jpg',
Single_Blob) as tb
Insert TestBlob(tbName, tbDesc, tbBin) Select 'Questionnaire.docx','Doc
Question', BulkColumn from Openrowset( Bulk
'C:\blob\udoc\Questionnaire.docx', Single_Blob) as tb
Insert TestBlob(tbName, tbDesc, 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/
推荐阅读
- javascript - jQuery:单击链接时附加数据属性
- r - 根据日期将多列与来自另一个框架的行值匹配
- python - Python-无序正则表达式
- android - onStop/onStart 后自定义视图中的 onDraw 不再执行
- intellij-idea - java.io.IOException:在 WebStorm 中打开终端时无法创建 PTY
- r - 在建模之前减少因子水平的数量
- dependency-injection - 在 AzureFunction 中注入 EntityFrameworkCore DbContext
- python - 如何立即将函数参数转换为小写(不在函数体中)?
- authorization - 一个属性可以用于 ALFA 中的多个类别吗?
- mysql - 如何在保持唯一行的同时进行内部连接