SQL Server 提供 OPENROWSET 函數,可直接透過 T-SQL 讀取外部檔案資料,無需匯入資料庫。以下針對常見格式提供範例:
SELECT * FROM OPENROWSET(
'MICROSOFT.JET.OLEDB.4.0',
'Text;HDR=NO;DATABASE=C:\',
'aa#txt' -- 檔案名 aa.txt,# 取代 .
)
SELECT * FROM OPENROWSET(
'MICROSOFT.JET.OLEDB.4.0',
'Excel 8.0;IMEX=1;HDR=YES;DATABASE=c:\test.xls',
'sheet1$'
)
SELECT * FROM OPENROWSET(
'MICROSOFT.JET.OLEDB.4.0',
'DBase IV;DATABASE=C:\',
'SELECT * FROM [客戶資料4.dbf]'
)
SELECT * FROM OPENROWSET(
'MICROSOFT.JET.OLEDB.4.0',
'DBase III;DATABASE=C:\',
'SELECT * FROM [客戶資料3.dbf]'
)
SELECT * FROM OPENROWSET(
'MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:\',
'SELECT * FROM [aa.DBF]'
)
注意: 路徑需為伺服器端實際路徑;若檔案名含空白或特殊字元,請以方括號包裹。