0

我目前的任务是将一些存储在平面文件中的数据读取到我的数据库中并针对它运行报告。我遇到的一个问题是检查文件是否确实存在。是否有一个简单的功能来检查文件是否存在?

谢谢!

4

3 回答 3

3

只是谷歌搜索,我SQL DBA 和MS SQL 提示中找到了这个。

于 2010-06-21T16:24:35.747 回答
1

你是在存储过程中做 ETL 吗?!!我认为你不应该,只是因为你可以。

我建议您为此使用 SSIS。在 Stored Proc 或 TSQL 中做 ETL 不是推荐的做法,事实上,它经常被用作不做的例子。

于 2010-06-21T16:25:51.880 回答
0

我相信你可以做这样的事情:

DECLARE @Path varchar(128) ,
 @FileName varchar(128)
 SET @Path = 'C:\'
 SET @FileName = 'FILE_NAME.EXT'

DECLARE @objFSys int
DECLARE @i int
DECLARE @File varchar(1000)

 SET @File = @Path + @FileName
 EXEC sp_OACreate 'Scripting.FileSystemObject', @objFSys out
 EXEC sp_OAMethod @objFSys, 'FileExists', @i out, @File
 IF @i = 1
  PRINT 'file exists'
 ELSE
  PRINT 'file does not exists'
 EXEC sp_OADestroy @objFSys 

本文介绍了这种方法和其他一些方法。

于 2010-06-21T16:24:58.073 回答