在用程序執(zhí)行SQL里的導(dǎo)入其它格式庫(kù)的存儲(chǔ)過(guò)程時(shí)(如導(dǎo)入DBF,EXCEL,ACCESS到SQL SERVER庫(kù)的存儲(chǔ)過(guò)程),會(huì)提示:
錯(cuò)誤類(lèi)型:
Microsoft OLE DB Provider for SQL Server (0x80040E14)
已拒絕對(duì) OLE DB 提供程序 ''Microsoft.Jet.OLEDB.4.0'' 的特殊訪問(wèn)。必須通過(guò)鏈接服務(wù)器來(lái)訪問(wèn)此提供程序。
而直接在 查詢分析器 里執(zhí)行就不會(huì)報(bào)錯(cuò)。
如下面語(yǔ)句格式的存儲(chǔ)過(guò)程
''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)該問(wèn)題的原因是當(dāng)前登錄SQL的帳戶權(quán)限不夠,需增加權(quán)限。
打開(kāi)SQL SERVER,點(diǎn)開(kāi)安全性,點(diǎn)擊登錄,如圖:
在右邊會(huì)出現(xiàn)所有的登錄帳戶,選擇你當(dāng)前的登錄帳戶,右邊屬性,如圖:
在出現(xiàn)的 SQL SERVER登錄屬性 中選擇 服務(wù)器角色 ,然后勾選 System Administrators 項(xiàng),確定,如圖: