2011-03-16 128 views
0

我正在使用Sql Server 2008.我可以將文件加載到目錄中;以下代碼:如何遍歷並獲取SQL Server目錄中的子目錄?

Set @Path = 'C:\Test\' 
Set @param = 'dir /B ' + @Path + '*.txt' 

我想要的是獲取在Test目錄的子目錄中的文件。 說測試/臨時文件夾和臨時文件夾包含多個文件夾說1,2,3(每個contining多個文件)。我想遍歷temp中的所有文件夾並獲取每個子目錄中的文件(1,2,3)。然後在Sql表中加載文件。

請教

+0

SQL Server是一個**數據庫**服務器 - 它並不真正處理目錄和文件 - 這是**文件服務器**的工作。如果您想批量加載一堆文件,請在您的文件服務器上編寫一個腳本,以調用例如SQL Server上的'bcp' - SQL Server實際上並不是用於處理文件的.... – 2011-03-16 07:07:50

回答

1

這個問題的最佳答案可能是根本不使用SQL。

如果你想做一些與subdirs有關的事情,你可以試試tree /F,但是你會發現實際上很難解析。

也許你可以試試看一下諸如python或vbscript這樣的腳本語言來幫助你。你可以掃描文件,甚至可以獲得更多關於文件放入數據庫的信息,例如文件大小和上次修改日期?

1

使用/S開啓dir以獲取子目錄中的內容。