Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2005 从相对路径批量插入图像_Sql Server 2005_Bulkinsert - Fatal编程技术网

Sql server 2005 从相对路径批量插入图像

Sql server 2005 从相对路径批量插入图像,sql-server-2005,bulkinsert,Sql Server 2005,Bulkinsert,我想知道是否有人能帮我解决这个小问题。我有以下插入声明: insert into symbol (sy_id, sy_fg_color, sy_bg_color, sy_icon) select 302, 0, 16245177, sy_icon = (select * from openrowset(bulk 'K:\mypath\icons\myicon.png', single_blob) as image) 是否可以以任何方式使路径相对?我正在使用TFS来部署数据库,因此,如果无法使其

我想知道是否有人能帮我解决这个小问题。我有以下插入声明:

insert into symbol (sy_id, sy_fg_color, sy_bg_color, sy_icon)
select 302, 0, 16245177, sy_icon = (select * from openrowset(bulk 'K:\mypath\icons\myicon.png', single_blob) as image)

是否可以以任何方式使路径相对?我正在使用TFS来部署数据库,因此,如果无法使其与T-SQL相对,也许可以在TFS/Visual Studio deploy的一点帮助下进行部署?

您可以使用
OPENROWSET
命令使用T-SQL将其插入
varbinary(max)
字段

INSERT dbo.tblPhotos
(
    LargePhoto
)
SELECT tblPhotos.*
FROM OPENROWSET 
    (BULK 'c:\images\image*.jpg', SINGLE_BLOB) ThumbnailPhoto
请注意,本例中的文件路径相对于目标SQL server,而不是运行此命令的客户端

本质上,使用TSQL选择BLOB有两种方法:

SELECT * FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a
以及:

SELECT BulkColumn FROM OPENROWSET (BULK 'C:\Test\Test1.pdf', SINGLE_BLOB) a
然后,您可以通过执行“插入选择”来使用此选项进行插入。。。或更新选择


查看更多信息

您有没有找到解决方案?没有,我还没有找到解决方案。这正是你需要的。对于这个问题没有直接的答案:(您可以在BulkInsert中使用UNC并首先将其设置为变量。您所说的“BulkInsert”是什么意思?一个大数据项(如果是,请参阅下面的答案),或者多次插入?