使用T-sql读取文本文件的最佳方法是什么?我已经看过BULK INSERT和许多不同的功能但不是它们正是我正在寻找的.
我需要读取文本文件中的每一行,然后将其插入到一个表中,其中包含一些其他信息,如文件名,文件位置,状态,记录日期和时间.创造时间等
BULK INSERT不允许我添加额外的字段,除非我遗漏了这些内容.
任何帮助或指向正确的方向将非常感激.
解决方法
您可以批量插入临时表,然后执行另一个插入连接您要添加的数据.这是一个例子
CREATE TABLE #TEXTFILE_1( FIELD1 varchar(100),FIELD2 varchar(100),FIELD3 varchar(100),FIELD4 varchar(100)); BULK INSERT #TEXTFILE_1 FROM 'C:\STUFF.TXT' WITH (FIELDTERMINATOR =' | ',ROWTERMINATOR =' \n') /*You now have your bulk data*/ insert into yourtable (field1,field2,field3,field4,field5,field6) select txt.FIELD1,txt.FIELD2,txt.FIELD3,txt.FIELD4,'something else1','something else2' from #TEXTFILE_1 txt drop table #TEXTFILE_1
这不符合你的意愿吗?