SQL從xls或xlsx導入數據

SQL導入xls數據格式:

SELECT * INTO test FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=d:/測試.xls',sheet1$)

 

SQL導入xlsx數據格式:

SELECT * INTO aa FROM OPENDATASOURCE('Microsoft.Ace.OLEDB.12.0',
'Data Source=D:/測試.xlsx;Extended Properties=Excel 12.0')...[sheet1$]

在向sql server2005導入數據時很可能會發生如下錯誤:

消息 15281,級別 16,狀態 1,第 1 行
SQL Server 阻止了對組件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的訪問,因爲此組件已作爲此服務器安全配置的一部分而被關閉。系統管理員可以通過使用 sp_configure 啓用 'Ad Hoc Distributed Queries'。有關啓用 'Ad Hoc Distributed Queries' 的詳細信息,請參閱 SQL Server 聯機叢書中的 "外圍應用配置器"。

解決方法:


exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure

注意:

 使用完畢後,記得要關閉它,因爲這是一個安全隱患,只需要將上面的1改成0,執行順序換下即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章