我需要读取存储过程中由SSIS包创建的日志文件。如何读取存储过程中的文本文件
有没有很好的方法来做到这一点?
我试过使用this code,但它显示我的文件内容为乱码。有没有处理某种编码问题?有更容易的方法吗?
我需要读取存储过程中由SSIS包创建的日志文件。如何读取存储过程中的文本文件
有没有很好的方法来做到这一点?
我试过使用this code,但它显示我的文件内容为乱码。有没有处理某种编码问题?有更容易的方法吗?
您是否尝试过直接批量插入?例如:
create table #TempTable (line varchar(256))
bulk insert #TempTable from 'c:\logfile.txt'
这很有用,谢谢! – Greg 2010-09-07 14:32:55
您可以尝试
select * from OPENROWSET(BULK N'C:\logfile.txt', SINGLE_BLOB)
这给了我一个很长的一串数字(十六进制无空格可能?) – Greg 2010-09-07 14:31:16
它将整个文件读取为一个单一的blob。 Whaddya预计? :)如果你喜欢,你可以拼接它并使用各种字符串操作函数进行切分。 – 2010-09-07 14:45:18
存储过程执行文件操作犯规听起来像是个好主意!
也许你可以更详细地解释场景,这可能有助于人们提出一个更好的出路。但是,如果你需要,我想你应该看看SQL Server中的CLR存储过程。 这样,你可以使用普通的.NET类
参考这些MSDN Link 1和MSDN Link 2链接,了解更多详细信息,
这种特殊link涉及到需要给予大会为它做权限的文件操作能够访问外部资源,如SQL Server中的CLR过程的文件
当你说文本文件时,你的意思是一个.txt文件吗? – 2010-09-07 14:16:52
是的,一个.txt文件 – Greg 2010-09-07 14:26:34