我們有一個我們想要使用TSQL導入到數據庫中的excel文件的文件夾。我們有代碼使用OpenRowSet
導入單個文件,但需要找到一種方法來遍歷文件夾中的文件並在每個文件上運行此代碼。如何使用TSQL完成這項工作?如何使用TSQL循環瀏覽文件夾中的所有文件?
4
A
回答
7
做了一些研究,並發現了一個地遍歷使用像這樣的文件:
CREATE TABLE #tmp(excelFileName VARCHAR(100));
INSERT INTO #tmp
EXEC xp_cmdshell 'dir /B c:\my\folder\path\';
declare @fileName varchar(100)
While (Select Count(*) From #tmp where excelFileName is not null) > 0
Begin
Select Top 1 @fileName = excelFileName From #tmp
-- OPENROWSET processing goes here, using @fileName to identify which file to use
Delete from #tmp Where excelFileName = @FileName
End
DROP TABLE #tmp
1
添加多到什麼Froadie說,你有可能需要先啓用使用shell命令(Enable 'xp_cmdshell' SQL Server)也是你CMD shell路徑可能需要有雙引號括起來,這是一個例子,我開始工作:
--Allow for SQL to use cmd shell
EXEC sp_configure 'show advanced options', 1 -- To allow advanced options to be changed.
RECONFIGURE -- To update the currently configured value for advanced options.
EXEC sp_configure 'xp_cmdshell', 1 -- To enable the feature.
RECONFIGURE -- To update the currently configured value for this feature.
--Loop through all of the files
CREATE TABLE #tmp(excelFileName VARCHAR(100));
INSERT INTO #tmp
EXEC xp_cmdshell 'dir /B "C:\_GENERAL RESOURCES\CANWET\ANUSPLINE DATA CONVERTER\AnusplineStationSelector\CCDP\Files\"';
declare @fileName varchar(100)
While (Select Count(*) From #tmp where excelFileName is not null) > 0
Begin
Select Top 1 @fileName = excelFileName From #tmp
PRINT(@filename)
-- OPENROWSET processing goes here, using @fileName to identify which file to use
Delete from #tmp Where excelFileName = @FileName
End
相關問題
- 1. VBScript循環瀏覽文件夾中的所有文件
- 2. 如何循環使用C文件夾中的所有文件?
- 3. 循環瀏覽用戶文件夾並刪除文件夾
- 4. 循環瀏覽csvs文件夾python
- 5. 循環瀏覽文件夾級別
- 6. 循環瀏覽文件夾中的文件
- 7. 如何循環瀏覽文件夾樹以生成文件夾路徑?
- 8. 使用VB.NET循環瀏覽XML文件
- 9. 使用PowerShell循環瀏覽JSON文件
- 10. 使用VBScript循環瀏覽XML文件
- 11. 循環瀏覽文件夾和回顯文件名稱
- 12. 循環瀏覽文件夾和合並文件?
- 13. 循環遍歷R中的文件夾中的所有文件
- 14. 如何瀏覽文件夾
- 15. Matlab,使用循環讀取使用xlsread的文件夾中的所有文件
- 16. PHP腳本循環瀏覽目錄中的所有文件?
- 17. 使用Imacros循環瀏覽屏幕上的文件和文件夾
- 18. Shellscript循環遍歷文件夾中的所有文件
- 19. .bat文件循環瀏覽文件夾並追加文本文件
- 20. 循環瀏覽文件夾並找到R中的特定文件
- 21. VBA腳本循環瀏覽當前文件夾中的文件並編輯
- 22. 如何瀏覽文件夾或文件或目錄使用php
- 23. 如何瀏覽文件夾用空格
- 24. 如何在java中瀏覽文件夾?
- 25. 循環瀏覽文件夾,只複製符合特定條件的文件
- 26. 如何通過使用Python循環瀏覽Json文件
- 27. 根據「上次修改日期」循環瀏覽文件夾中的所有文件
- 28. 循環瀏覽目錄中的文件夾/子文件夾並檢查.gitignore文件
- 29. 如何使用as3加載文件夾中的所有文件
- 30. 如何使用XNA加載文件夾中的所有文件?
加上'/ s'到'dir'命令,以便查詢獨立於當前目錄。 – Neo 2016-11-28 13:14:59