-1
我每天會有3個文件進入我的C:
驅動器,其時間戳格式爲YYMMDDhhmm
。爲前。 TotalSale1611160037
意味着2016-11-16 12:37 am
使用SQL Server 2014中的通配符檢查文件
TotalSale1611160037
RegionSale1611160037
Statesale1611160037
我已經安排在SQL Server代理作業以這3個文件加載到SQL Server 2014
我的要求是,在開始裝載作業之前,我需要檢查,如果3文件存在於C:
驅動器上。只有在C:
驅動器上存在3個文件時,該作業才能運行。
如果C:
驅動器上缺少這些文件中的任何一個,則加載作業不應運行併發送數據庫電子郵件,以顯示缺少哪些文件。
文件的第一部分(TotalSale
,RegionSale
,Statesale
)每天都是相同的;只有時間戳(1611160037
)會更改。加載過程後,我將把這些文件移動到另一個文件夾中。
請幫幫我。我不知道如何在SQL Server中使用通配符來檢查文件是否存在。
謝謝您的時間,並幫助
有辦法在SQL中,包括xp_cmdshell的做到這一點,但它是一個安全問題。我建議你把它放在應用程序層,即使用.net或java,然後從應用程序層觸發sql server SP,而不是在SQL Server中編寫所有這些文件。 – Surendra
[檢查文件是否存在或不存在於sql server中?](http://stackoverflow.com/questions/11740000/check-for-file-exists-or-not-in-sql-server) – Doliveras
通常你會使用SSIS腳本任務和System.IO.File.Exists ()函數和/或system.io.directoryinfo.getfiles並遍歷以查看您想要的文件是否存在。 – Matt