SQL Serverを使ってファイルが存在するかどうかを判断してから削除します。
SQL Serverではシステム内部記憶プロセスxp_を使用できます。fileexistはファイルが存在するかどうかを判断します。もし存在すればxp_を使います。cmdshellはファイルを削除します。xp_fileexistはファイルが存在するかどうかを判断するほか、フォルダが存在するかどうかを判断することができます。以下はこの2つを使用する例です。
ファイル保存プロセスALTER proc[dbo].[delFile_]を削除します。P](@path nvarrhar(200)as declare@result int execmaster.dbo.xp_fileexist@path、@result out--パスはスペースif@result=1--1が存在し、0はBeginが存在しない。 --パスにスペースがある場合は、cmdshellを実行する前にスペース記号を置換し、ダブルクォーテーションで囲む必要があります。 set@path='del'+replace(@path、'、'''''') execmaster.dbo.xp_cmdshell@path end呼び出し格納プロセスexec MIS.dbo.delfile_P'F:/Internet Explorer 6グリーン版/install.log'
ファイル保存プロセスALTER proc[dbo].[delFile_]を削除します。P](@path nvarrhar(200)as declare@result int execmaster.dbo.xp_fileexist@path、@result out--パスはスペースif@result=1--1が存在し、0はBeginが存在しない。 --パスにスペースがある場合は、cmdshellを実行する前にスペース記号を置換し、ダブルクォーテーションで囲む必要があります。 set@path='del'+replace(@path、'、'''''') execmaster.dbo.xp_cmdshell@path end呼び出し格納プロセスexec MIS.dbo.delfile_P'F:/Internet Explorer 6グリーン版/install.log'