SQLServer批量倒入目录文件

可以用扩展存储过程xp_dirtree获取文件列表,用openrowset倒入数据到二进制字段。
openrowset的用法可以参考msdn
如果文件很多,建议还是用程序倒入了

if (object_id ('t_bulkResult' ) is   not   null )
drop table t_bulkResult

create table t_bulkResult (name varchar (1000 ), data image )
go

declare @d varchar (1000 )
set @d = 'c:/test/'
create table #tb (fName varchar (1000 ), d int , f int )
insert into #tb exec xp_dirtree @d , 1 , 1
delete from #tb where f <> 1

declare @ sql nvarchar (max )
select @ sql = isnull (@ sql , '' )+ 'insert into t_bulkResult select ''' +@d + fname + ''',* from openrowset(bulk N''' +@d + fName + ''', SINGLE_BLOB) b
'
from #tb a

exec sp_executesql @ sql

drop table #tb

select * from t_bulkResult

 

原文地址:https://www.cnblogs.com/cl1024cl/p/6204825.html