sql server 讀取excel裡的資料

2022-04-23 12:37:22 字數 1670 閱讀 5103

以下是執行的sql**,只拿簡單讀取資料舉例,其他詳細的,請自行檢視

exec sp_configure '

show advanced options

',1reconfigure

exec sp_configure '

ad hoc distributed queries

',1reconfigure

goexec master.dbo.sp_msset_oledb_prop n'

microsoft.ace.oledb.12.0

', n'

allowinprocess

', 1

exec master.dbo.sp_msset_oledb_prop n'

microsoft.ace.oledb.12.0

', n'

dynamicparameters

', 1

goselect

*from

openrowset('

microsoft.ace.oledb.12.0

','excel 12.0;database=c:\users\beige\desktop\sqltoexcel\data.xlsx;hdr=yes;imex=1

', icd$)

goselect

*from

openrowset('

microsoft.ace.oledb.12.0

','excel 12.0;database=c:\users\beige\desktop\sqltoexcel\data.xlsx;hdr=yes;imex=1

', cms$)

goexec sp_configure '

ad hoc distributed queries

',0reconfigure

exec sp_configure '

show advanced options

',0reconfigure

執行報錯時,尚未註冊 ole db 訪問介面 "microsoft.ace.oledb.12.0"。

另外,很重要的一點是:執行以上sql語句的資料庫必須是本地資料庫,

否則報錯為

鏈結伺服器 "(null)" 的 ole db 訪問介面 "microsoft.ace.oledb.12.0

" 報錯。提供程式未給出有關錯誤的任何資訊。

訊息 7303,級別 16,狀態 1,第 1

行無法初始化鏈結伺服器 "(

null)" 的 ole db 訪問介面 "microsoft.ace.oledb.12.0" 的資料來源物件。

下面總結解決方式:

1、在sql server 外圍應用配置器中啟用 openrowset 和 opendatasource函式

2、執行以上sql語句的資料庫必須是本地資料庫,如果為遠端的資料庫就會報上面的錯誤

3、鏈結字串 extended properties屬性的內容要以分號間隔並用雙引號括起來,sheet1$ 在括號外

4、注意office的版本4.0是office2003,12.0是office2007的版本,看看是否裝了驅動。

5、最為關鍵的是要看sql server 版本號,是32位的還是64位的。x64位的sql server很多的office的驅動是不支援的。

讀取excel PySpark讀取Excel

日常工作中,客戶通過excel提供資料是一種很常見的方式,既然碰到了就得解決。我常用的辦法就是pandas讀取,並儲存為parquet,如果只讀取乙個sheet,import pandas as pddf pd.read excel excel1.xlsx df.to parquet excel e...

robotFramework 讀取Excel檔案

1 robotframework讀取excel檔案 第一步 先安裝excellibrary 可以直接通過命令安裝 pip install robotframework excellibrary 安裝完成後使用pip list命令檢視是否安裝成功 第二步 安裝完後將excellibrary匯入到rob...

小芝士告訴你Python怎麼讀取Excel

python使用第三方庫xlrd讀取excel 介面自動化測試中,資料和 分離才能邏輯更清晰,所以用excel管理用例資料比較方便 一 安裝xlrd pip install xlrd 二 使用命令 coding utf 8 import xlrd wb xlrd.open workbook test...