2013-03-04 54 views
1

下運行成功:但​​是與OPENROWSET執行sys.xp_readerrorlog

EXEC sys.xp_readerrorlog 0 

這不:

SELECT * 
FROM OPENROWSET(
    'SQLNCLI', 
    'Server=.;Trusted_Connection=Yes;', 
    'EXEC sys.xp_readerrorlog 0') 

我登錄使用我的Windows帳戶,我對所有數據庫有sysadmin權限我的本地服務器,包括系統數據庫。

以下是錯誤消息:

消息7357,級別16,狀態2,行11
無法處理對象 「EXEC sys.xp_readerrorlog 0」。鏈接的 服務器「(null)」的OLE DB提供程序「SQLNCLI10」指示該對象沒有列或當前用戶對該對象沒有權限。

我剛剛在的情況下,這是與OPENROWSET創建一個臨時文件,但本地管理員(我的組)具有完全控制權的問題,查了C:\Windows\ServiceProfiles\LocalService\AppData文件夾權限。

爲什麼我得到這個錯誤,我該如何解決它?

回答

3

試試這個:

SELECT * 
FROM OPENROWSET(
    'SQLNCLI', 
    'Server=.;Trusted_Connection=Yes;', 
    'SET FMTONLY OFF;EXEC sys.xp_readerrorlog 0') 

基本上,它試圖在運行程序之前推斷結果的形狀。

使用該設置選項意味着唯一可行的方法是執行該過程。