我有一个我想访问的olap多维数据集。我正在尝试执行mdx查询。这是我简单的测试程序:
static void Main(string[] args)
{
using (OleDbConnection cn = new OleDbConnection())
{
cn.ConnectionString = "secret";
cn.Open();
string MDX = "SELECT [Measures].[Amount] "+ " ON ROWS, " + "[Dim Client].[Common Client Name].&[test Name] "+ " ON COLUMNS " + "from [CubeName];";
OleDbCommand command = new OleDbCommand(MDX, cn);
System.Data.DataSet ds = new System.Data.DataSet();
OleDbDataAdapter adp = new OleDbDataAdapter(command);
adp.Fill(ds);
Console.WriteLine(ds.Tables[0].Rows[0][1]);
}
}
我不断收到以下错误:Incorrect syntax near the keyword 'ON'.
我无法弄清楚我做错了什么。如果我直接从管理工作室执行完全相同的查询,立方体响应没有错误。
答案 0 :(得分:0)
在调试模式下,将查询复制到字符串引号""
中答案 1 :(得分:0)
尝试没有连接并且可能使用轴索引号,如果您使用成员标题,则不需要包含&符号:
string MDX = "SELECT [Measures].[Amount] ON 0, [Dim Client].[Common Client Name].[test Name] ON 1 FROM[CubeName];";
mdx
中SSMS
执行此操作是否正常?