使用T-SQL openrowset存在检查文件

时间:2011-06-21 06:01:44

标签: sql-server tsql

我正在使用T-SQL MS SQL Server 2005的OPENROWSET操作。

如何在未启用命令shell扩展的情况下检查文件是否存在?

3 个答案:

答案 0 :(得分:2)

尝试使用EXEC Master.dbo.xp_fileexist

答案 1 :(得分:1)

使用CLR存储过程检查文件是否存在。在TSQL中调用该过程并检查文件是否存在。检查此链接: http://carlosbercero.com/post/?post=Writing_a_CLR_Stored_Procedure_on_SQL_Server

答案 2 :(得分:0)

你可以尝试

BEGIN TRY

    ...

    BEGIN TRY
        select
            *
        from
            OPENROWSET (...)
    END TRY
    BEGIN CATCH
       IF ERROR_NUMBER() <> 7399 --have to experiment to get the right error number
           RAISERRROR (stuff about real error, 16, 1)
       ELSE
           RAISERRROR ('No file!', 16, 1)
    END CATCH

    ...

END TRY
BEGIN CATCH
   --normal error handling
END CATCH