SQLServer将文件下所有的txt内容导入到数据库表
2014-02-19 17:19
169 查看
使用场景: 比如将 C:\Test\ 目录下的所有 txt文件内容 导入到 Table_1 中
/***** Step 1 开启 xp_cmdshell Use Master GO EXEC master.dbo.sp_configure 'show advanced options', 1 RECONFIGURE WITH OVERRIDE GO EXEC master.dbo.sp_configure 'xp_cmdshell', 1 RECONFIGURE WITH OVERRIDE GO *******/
--定义临时表,用于存放获取的文件名称
CREATE TABLE #files ( name VARCHAR(200) NULL , sql VARCHAR(7000) NULL ) --获取文件名称,存放在#files INSERT #files ( name ) EXEC master..xp_cmdshell 'dir c:\test /b' --删除不要的文件名称 DELETE #files WHERE COALESCE(name, '') NOT LIKE 'Code%' --将 Code改为要删除的文件名称 --插入需要 导入文件内容的 命令SQL,需要修改 Table_1(改为导入的Table)和文件路径 UPDATE #files SET sql = 'BULK INSERT Table_1 FROM ''' + 'C:\Test\' + name + ''' WITH (' + 'DATAFILETYPE = ''char'', FIELDTERMINATOR = ''\t'', ' + 'ROWTERMINATOR = ''\n'')' --开始执行导入 DECLARE @sql VARCHAR(8000) DECLARE cur CURSOR STATIC LOCAL FOR SELECT sql FROM #files OPEN cur WHILE 1 = 1 BEGIN FETCH cur INTO @sql IF @@fetch_status <> 0 BREAK EXEC(@sql) END DEALLOCATE cur
主要分为读取文件夹下所有文件和导入文件内容两部分
--读取文件夹下所有文件
declare @files table (ID int IDENTITY, FileName varchar(100)) insert into @files execute xp_cmdshell 'dir c:\test /b' select 'c:\'+ [FileName] AS FILEPATH INTO #temp from @files SELECT * FROM #temp
--导入文件内容
BULK INSERT dbo.Table_1 FROM #temp WITH ( ROWTERMINATOR ='\n' )
参考: http://social.msdn.microsoft.com/Forums/sqlserver/en-US/47c8edc1-8cad-4a24-a09a-3fc0c943325c/bulk-insert-multiple-files-tsql
相关文章推荐
- sql server 文件夹下的所有txt文件内容导入到数据库表中;远程备份到服务器
- 数据导入,可以将txt文本文件或excel的内容导入到数据库
- 如何使用BULK INSERT将txt文件导入sqlserver 数据库里
- SSIS【Foreach 循环容器_Foreach 文件枚举器】(导入路径下的所有txt文件的内容) (转)
- Sqlldr导入txt文件内容到数据库中
- 将txt文件内容导入sql server 数据库表中
- springMVC将txt文件或Excel文件中的内容上传并导入数据库
- 从文件夹目录下导入所有指定文件类型的数据内容到数据库表
- 使用企业管理器将txt文件的内容导入到数据库中
- 将txt文档中内容导入到数据库,并且显示一个对话框,提示用户选择文件的位置
- SSIS【Foreach 循环容器_Foreach 文件枚举器】(导入路径下的所有txt文件的内容)
- 使用txt文件导入数据库内容
- txt文件导入数据库的SQL语句
- 用lucene3.5搜索数据库和txt文件内容
- 将TXT文件中的内容正确导入到Excel表格中不混乱的方法
- TXT 文件 导入数据库中 在终端密令
- springbatch和定时器读取txt文件批量导入数据库
- C#Winform向数据库中导入.txt或者.CSV文件的数据
- VC 实现 txt文件 导入数据库
- asp.net 导入CSV 文件内容 到 SQL Server 数据库 解决CSV内容数据重复添加问题