Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để tôi có thể lặp lại tất cả các tệp trong một thư mục bằng TSQL?

Đã thực hiện một số nghiên cứu và tìm ra cách lặp lại các tệp bằng cách sử dụng một cái gì đó như sau:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tìm một thủ tục được lưu trữ có chứa <text>?

  2. Không thể lưu nhiều hơn 43679 ký tự trong cột kiểu dữ liệu văn bản trong SQL Server

  3. Tại sao có một loại hiển thị trong kế hoạch thực hiện của tôi?

  4. Có kiểu dữ liệu Boolean trong Microsoft SQL Server giống như trong MySQL không?

  5. Cách tối ưu để nối / tổng hợp các chuỗi