如何在C#中执行SQL Analysis Server的MDX查询 [英] How to execute a MDX query of SQL Analysis Server in C#

查看:259
本文介绍了如何在C#中执行SQL Analysis Server的MDX查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在C#中执行SQL分析查询.我已使用以下代码成功连接到Analysis数据库:

I want to execute a SQL Analysis Query in C#. I have successfully connected to Analysis database using the below code:

Server DM_Server = new Server();
Database AS_Database = new Database();
DM_Server.Connect(//SQL Analysis Server Connection String);
AS_Database = DM_Server.Databases[//Database name];

我有一个类似的SQL查询

I have a SQL query like

SELECT FLATTENED PredictAssociation()
From
[Mining Structure Name]
NATURAL PREDICTION JOIN
(SELECT (SELECT 1 AS [UserId]) AS [Vm]) AS t 

推荐答案

您需要使用 Nuget 上获得.

You need to use ADOMD.NET which is the Microsoft.AnalysisServices.AdomdClient namespace. It is also available on Nuget.

AdomdConnection conn = new AdomdConnection(
    "Data Source=localhost;Catalog=YourDatabase");
conn.Open();

string commandText = @"SELECT FLATTENED 
    PredictAssociation()
    From
    [Mining Structure Name]
    NATURAL PREDICTION JOIN
    (SELECT (SELECT 1 AS [UserId]) AS [Vm]) AS t ";
AdomdCommand cmd = new AdomdCommand(commandText, conn);
AdomdDataReader dr = cmd.ExecuteReader();

while (dr.Read())
{
   Console.WriteLine(Convert.ToString(dr[0]));
}

dr.Close();
conn.Close();

在代码示例中,我从问题中借用了DMX查询.但是任何MDX或DAX查询也应该起作用.

In the code sample I borrowed the DMX query from the question. But any MDX or DAX query should also work.

更新:.NET Core的ADOMD.NET(Microsoft.AnalysisServices.AdomdClient)为在nuget上预览时可用.这是Microsoft官方维护的库.不幸的是,目前它仅适用于Azure Analysis Services和Power BI Premium,不适用于本地Analysis Services.如果我听说未取消预览限制,则会进行更新.

Update: ADOMD.NET (Microsoft.AnalysisServices.AdomdClient) for .NET Core is available in preview on nuget now. This is an official Microsoft maintained library. Unfortunately at the moment it only works for Azure Analysis Services and Power BI Premium, not on-prem Analysis Services. I will update if I hear that preview limitation hasn’t been lifted.

这篇关于如何在C#中执行SQL Analysis Server的MDX查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆