在用程序執(zhí)行SQL里的導(dǎo)入其它格式庫(kù)的存儲(chǔ)過程時(shí)(如導(dǎo)入DBF,EXCEL,ACCESS到SQL SERVER庫(kù)的存儲(chǔ)過程),會(huì)提示:
錯(cuò)誤類型:
Microsoft OLE DB Provider for SQL Server (0x80040E14)
已拒絕對(duì) OLE DB 提供程序 ''Microsoft.Jet.OLEDB.4.0'' 的特殊訪問。必須通過鏈接服務(wù)器來訪問此提供程序。
而直接在 查詢分析器 里執(zhí)行就不會(huì)報(bào)錯(cuò)。
如下面語句格式的存儲(chǔ)過程
''insert into DBF_Cost(OP_TIME,MSISDN,CALL_FEE,P2P_FEE,MONTH_FEE,GPRS_FEE,MNET_FEE,TOTAL_FEE) select OP_TIME,MSISDN,CALL_FEE,P2P_FEE,MONTH_FEE,GPRS_FEE,MNET_FEE,TOTAL_FEE from OpenDataSource(''''Microsoft.Jet.OLEDB.4.0'''',''''Data Source="''+@path+''";User ID=;Password=;Extended properties=dBase 5.0'''')...''+@tname
出現(xiàn)該問題的原因是當(dāng)前登錄SQL的帳戶權(quán)限不夠,需增加權(quán)限。
打開SQL SERVER,點(diǎn)開安全性,點(diǎn)擊登錄,如圖:
在右邊會(huì)出現(xiàn)所有的登錄帳戶,選擇你當(dāng)前的登錄帳戶,右邊屬性,如圖:
在出現(xiàn)的 SQL SERVER登錄屬性 中選擇 服務(wù)器角色 ,然后勾選 System Administrators 項(xiàng),確定,如圖: