2016-10-17 5 views
1

나는 나의 SQL Server 인스턴스에 people 테이블이있는 데이터베이스 Chapter3Data을 가지고,하지만 난이 오류가 :MDX 권한 오류가 나는 <pre><code>INSERT INTO MINING STRUCTURE [People1] ([CustID], [Name], [Gender], [Age], [CarMake],[CarModel]) OPENQUERY(Chapter3Data, 'SELECT [Key], Name, Gender, Age, CarMake, CarModel FROM People') </code></pre> <p>MDX</p>이 쿼리를 실행하려고

이 중 하나를 '에산 \ 에산 위대'사용자가 'Chapter3Data'개체에 액세스 할 수있는 권한이 없습니다 ...
를 쿼리를 실행, 또는 개체가 존재하지 않습니다.

답변

0

완전한
실행이 유효 mdx되지 않습니다 :

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

당신은 당신이 계층 구조 ON 싶습니다 축 지정할 필요 - 그래서 일반적으로 ROWS 또는 COLUMNS을 - 예를 들어이 될 수 있습니다

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

SSMS에서 큐브 서버에 연결할 수 있어야합니다. 그러면 다음을 수행 할 수 있습니다. mdx 쿼리를 열고 mdx를 테스트하여 유효한지 확인하십시오. 연결된 서버를 시도하기 전에 좋은 아이디어입니다 OPENQUERY.

+0

이것은 실제로 유효한 DMX 쿼리입니다. 질문은 MDX가 아니라 DMX로 태그되어야합니다. – SQLServerSteve

0

문제는 관계형 데이터베이스가 아닌 Analysis Services 인스턴스 나 연결된 서버의 이름 또는 DSV (데이터 원본 뷰)에 정의 된 데이터 소스의 이름에 연결해야한다는 것입니다. MSDN에서 D MX INSERT Openquery Permission Problem이라는 제목의 게시물에 대한 Raymond Li의 답변에 걸려 넘어지면서 마침내 올바른 결과를 얻기 전에 이러한 세 가지 실수를 모두 내 렸습니다. OPENQUERY를 사용할 때마다 데이터베이스 또는 연결된 서버를 연결하기 때문에이 방법을 구현하는 것은 Microsoft의 직관에 어긋납니다.하지만 그게 효과가 있습니다.