首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

bulk insert 多个资料

2013-03-13 
bulk insert 多个文件有如下bulk insert语句,一次只能操作一个数据文件file01.txt:BULK INSERT DBnameFROM

bulk insert 多个文件
有如下bulk insert语句,一次只能操作一个数据文件file01.txt:

BULK INSERT DBname
   FROM 'D:\datadir\file1.txt'
   WITH
     (
        FIELDTERMINATOR =',',
        ROWTERMINATOR = '\n'
      )

需求要求助的问题是 D:\datadir 目录下有多个文件file01.txt~file20.txt,难道需要操作20次吗?
是否有其它方法,或者可以指定目录导入的方法,我把所有文件都归到该目录下?

求指导~ insert bulk
[解决办法]
写个存储过程循环,或者使用ssis循环该目录。
[解决办法]


declare @i int --计数
declare @size int  --计数范围

declare @s varchar(8000) 
set @i=1
set @size=20
while @i<=@size 
begin

set  @s='bulk insert DBname from '+ '''D:\datadir\file'+@i+'.txt'' WITH ( FIELDTERMINATOR = '','', ROWTERMINATOR =''\n'')'
exec(@s)
set @i=@i+1  
end

[解决办法]
方法1、用动态语句拼接执行,如2楼的方式,但是是否能执行我就没试过了。
方法2、借用cmd或者powershell,遍历这个文件夹下的文件,然后循环执行。
方法3、自己用.net或者其他语言写个程序,其实核心还是遍历并执行insert
[解决办法]
拼出一堆带换行的bcp语句,右键复制到cmd里,就会挨个跑了

热点排行