使用ADOMD.net开发BI应用
ADOMD.NET是微软开发的专门针对sqlserver2005 Analysis Services的应用的。目前最新版本为9.0版本。
下载地址:http://www.microsoft.com/downloads/details.aspx?familyid=d09c1d60-a13c-4479-9b91-9e8b9d835cdc&displaylang=en
首先安装adomd.net9.0,安装完毕以后,我们可以添加对.NET选项中的Microsoft.AnalysisServices.AdomdClient.dll的引用。
其实adomd.net中的操作数据库的对象名称跟ado.net中的差不多,主要的有以下几个:
AdomdConnection相当于ADO.NET中的SqlConnection
AdomdCommand相当于ADO.NET中的SqlCommand
AdomdDataReader相当于ADO.NET中的SqlDataReader
AdomdDataAdapter相当于ADO.NET中的SqlDataAdapter
CellSet 相当于ADO.NET中的DataSet
下面我们举几个简单的例子:
1.打开和关闭数据库连接
string connectionString = "Data Source=limj;Catalog=Analysis Services Tutorial;ConnectTo=9.0;Integrated Security=SSPI";
AdomdConnection connection;
connection = new AdomdConnection(connectionString);
connection.Open();
connection.Close();
2.执行数据库命令返回cellset(注意,这里不是sql语句,而是MDX语句)
AdomdCommand command;
string mdx = "SELECT
{ [Measures].[Sales Amount],
[Measures].[Tax Amount] } ON COLUMNS,
{ [Date].[Fiscal Time].[Fiscal Year].&[2002],
[Date].[Fiscal Time].[Fiscal Year].&[2003] } ON ROWS
FROM [Adventure Works]
WHERE ( [Sales Territory].[Southwest] )
";
command = new AdomdCommand(mdx, connection);
CellSet cellSet = command.ExecuteCellSet();
3.执行数据库命令不返回
command.ExecuteNonQuery();
好了,例子咱们举完了,这是我的第二篇文章,一天写两篇,不简单呀,嘿嘿。
同样,我们和上篇一样,提供我的sourcecode,在源码中,我封装了一个简单的ADBHelper(静态类)和AnalysisServer(实例类)这两个类的
功能都是一样的,这里只提供一个参考,我自己都感觉我的类写的比较烂,算了,以后真正做项目的时候,我再来优化。
下面是下载地址:
Adomd.net封装以及示例