2016-10-17 135 views
1

我想在MDXMDX權限錯誤

INSERT INTO MINING STRUCTURE [People1] 
([CustID], [Name], [Gender], [Age], [CarMake],[CarModel]) 
OPENQUERY(Chapter3Data, 
'SELECT [Key], Name, Gender, Age, CarMake, CarModel 
FROM People') 

來執行這個查詢我有一個數據庫Chapter3Data在我的SQL Server實例people表,但我得到這個錯誤:

執行查詢...
無論是「伊赫桑\伊赫桑·阿克巴爾」用戶沒有權限訪問「Chapter3Data」對象,或對象不存在。
執行完成

回答

0

這是無效的mdx

SELECT [Key], Name, Gender, Age, CarMake, CarModel 
FROM People 

你需要指定哪個軸你想的層次ON - 所以一般ROWSCOLUMNS - 一個例子可能是:

SELECT 
    [Key].[Key].MEMBERS ON ROWS, 
    [Gender].[Gender].MEMBERS ON COLUMS 
FROM People; 

在SSMS中,您應該能夠打開與立方體服務器的連接 - 然後您可以打開一個mdx查詢並測試你的mdx以確保它是有效的 - 在嘗試鏈接服務器OPENQUERY函數之前,一個好主意。

+0

這實際上是一個有效的DMX查詢;該問題應該標記爲DMX,而不是MDX。 – SQLServerSteve

0

的問題是,你應該鏈接到有關分析服務,而不是一個關係數據庫,或鏈接服務器的名稱,或者數據源視圖(DSV)的實例定義的數據源的名稱。在最終得到正確答案之前,我犯了所有這三個錯誤,之後在雷蒙德李對MSDN上D MX INSERT Openquery Permission Problem這個帖子的回答中找到了答案。對於微軟來說,這樣做是絕對違反直覺的,因爲在其他任何時候使用OPENQUERY的時候你會插入數據庫或者鏈接服務器,但這是有效的。