Sqlserver linked server指向Excel報錯編號為7399和7303的解決方法
linked server的建立語句如下
EXEC master.dbo.sp_addlinkedserver @server = N'XL_INDEXPERFORMANCELIST', @srvproduct=N'Jet 4.0', @provider=N'Microsoft.ACE.OLEDB.12.0', @datasrc=N'\\frdbprod1\MKTINDX\IndexPerformanceList_DBPROD3.xls', @provstr=N'Excel 5.0'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'XL_INDEXPERFORMANCELIST',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
訪問linked server有如下錯誤
Msg 7399, Level 16, State 1, Line 1 The OLE DB provider Microsoft.ACE.OLEDB.15.0 for linked server (null) reported an error. The provider did not give any information about the error.
Msg 7303, Level 16, State 1, Line 1 Cannot initialize the data source object of OLE DB provider Microsoft.ACE.OLEDB.15.0 for linked server (null).
解決思路
1、確保excel沒有被其他開啟
2、確保訪問linked server的使用者擁有訪問excel檔案的許可權,即檢視使用者是否有讀取共享目錄\\frdbprod1\MKTINDX\下所有檔案的許可權
3、確保@datasrc值中的共享目錄是使用的UNC模式,即必須使用伺服器名稱而不能使用別名
To specify a shared data file, use its universal naming convention (UNC) name, which takes the general form, **\\Servername\Sharename\Path\**Filename.
備註:啥是別名,就是伺服器對應一個ip,然後在DNS伺服器中對這個ip也設定了其他的名稱,使用其他名稱也可以訪問這臺伺服器
解決方法
按上面的思路1、2檢查,發現都沒有問題,最後發現frdbprod1不是伺服器名稱,伺服器名稱是netappdai1,修改@datasrc=N'\\netappdai1\MKTINDX\IndexPerformanceList_DBPROD3.xls',之後可以正常訪問這個linked server了
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30126024/viewspace-2795712/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- sqlserver建立linked server到redshift的方法SQLServer
- Sqlserver 登入報錯Server is in script upgrade mode(Error 18401)的解決方法SQLServerError
- SQLServer最大流水號的解決方法SQLServer
- Sqlserver 如何truncate linked server的表SQLServer
- kaldi的編譯安裝與報錯解決方法編譯
- 【SQLServer】linked server "" was unable to begin a distributed transaction.SQLServer
- SQL Server 匯出Excel有換行的解決方法SQLServerExcel
- 幾個報錯的解決方法
- zabbix-server啟動報錯解決Server
- Server Application Error報錯資訊的解決方案ServerAPPError
- hive使用報錯解決方法Hive
- CentOS 6.5編譯安裝IPVS 1.26報錯的解決方法CentOS編譯
- excel報表解決方法(ebs)Excel
- dbfread報錯ValueError錯誤解決方法Error
- ***XAMPP:報錯Unabletoloaddynamiclibrary的解決方法
- mongoDB的db.shutdownServer()報錯的解決方法MongoDBServer
- sudo rosdep init 和 rosdep update 報錯的解決方法(簡單有效!)ROS
- isNaN("abc")編譯報錯解決辦法NaN編譯
- ceph叢集安裝報錯解決方法
- RAC: SRVCTL and VIPCA 命令報錯解決方法PCA
- MRTG生成首頁報錯解決方法
- DBMS_METADATA報錯解決方法
- 解決MySql報錯:1130 - Host ‘xxx‘ is not allowed to connect to this MySQL server的方法MySqlServer
- 安裝psutil模組報錯的解決方法
- HBase刪除列族報錯的解決方法
- SQL Server裡附加資料庫出錯的解決方法SQLServer資料庫
- HTTP 錯誤 500.19- Internal Server Error 錯誤解決方法HTTPServerError
- SS報錯的解決
- Nginx報504 gateway timeout錯誤的解決方法NginxGateway
- R語言的各種報錯及其解決方法R語言
- Nginx 報錯 504 Gateway Time-out 的解決方法NginxGateway
- Sqlserver作業系統使用者Administrator本地登陸SSMS報錯18456的解決方法SQLServer作業系統SSM
- Sqlserver關於備份報錯提示某個資料檔案不線上it is not online的解決方法SQLServer
- Troubleshooting: SQL Server連線錯誤解決方法列表SQLServer
- windows update更新失敗報錯解決方法Windows
- JDeveloper啟動時老是報錯-解決方法Developer
- owb修改主機名和IP地址啟動報錯解決方法
- postgresql端使用tds_fdw建立訪問sqlserver的linked server的操作說明SQLServer