[SQL SERVER]使用TSQL取得資料夾下所有檔案清單

[SQL SERVER]使用TSQL取得資料夾下所有檔案清單

網友問題,解決方法很多,我這裡使用xp_dirtree來處理,

相關目錄請確定SQL Service account有讀取權限

 

xp_dirtree 參數1,參數2,參數3

參數1:起始讀取目錄

參數2:是否讀取所有子目錄(預設0 讀取全部)

參數3:是否顯示所有檔案(預設0 不顯示全部)

 

 

1.遠端某目錄下所有檔案清單

exec master.sys.xp_dirtree '\\rico-pc\c$\ATI\Support\10-2_vista64_win7_64_dd_ccc_wdm_enu',0,1;

image

 

2.本機目錄下所有檔案清單

exec master.sys.xp_dirtree 'D:\ApLogs',0,1;

image

 

 

--取得所有檔案清單

declare @myfilelist table
(
dirpath nvarchar(2000),
depth int,
isfile bit
)

insert into @myfilelist
exec master.sys.xp_dirtree 'D:\ApLogs',0,1;

select * from @myfilelist where isfile=1

 

 

image