• 用VS的服务器资源管理器连接和查看OLAP多维数据集


    1.进入VS2005,点击“视图”菜单 下的“服务器资源管理器”
    2.在“服务器资源管理器”的项目树 上 右键点选“数据连接”
      选择“添加连接” 打开的“添加连接”对话框
    3.在打开的对话框 点选“更改”按钮 以 更改数据源
    4.在打开的“更改数据源”对话框
      在“数据源” 列表中 选择“<其它>”
      在“数据提供程序”列表中 选择 “用于 OLE DB的.NET Framework数据提供程序”
      点击“确定”按钮 关闭当前的“更改数据源”对话框
      画面 返回到刚才的“添加连接”对话框
    5.在“添加连接”对话框 的 “OLE DB 提供程序”处
      选择“Microsoft OLE DB Provider for Olap Services 8.0”
      也可以 点选其后的“数据链接”按钮 进行更细化的设置
    6.输入服务器名及位置;
      如服务器名 127.0.0.1或localhost
        位置 127.0.0.1 或空
    7.点击下方的“测试连接”按钮 进行连接测试
    8.选择“登录服务器”的方式 及 填写相关设置
      如 “使用特定的用户名和密码”
    9.在“初始目录”处 选择数据仓库数据库 如“mini”
    10. 点选“高级”按钮 进行连接的查看 设置
    11. 点击“确定” 完成 新数据连接的创建
    目前效果图如下:

    12.可以看到 原数据仓库数据库下的多维数据集
       在这里以“表”的形式呈现  
       维度表和事实表融合在了一起
       维度表字段形如 dateList:月!NAME ,
           dateList:月!KEY,dateList:月!UNIQUE_NAME
       事实表的度量值形如 Measures:Pay Price
    13.右键点选所谓的“表”(多维数据集) 可以选择
       “显示表数据” 和 “新建查询”
    14.右键点选“新建查询” 打开 查询设计器
       添加相关表payList
       选择相关字段 组织查询语句
    部分示例如下:

    SELECT DISTINCT [dateList:月!KEY] FROM payList
    结果为 9

    SELECT DISTINCT [dateList:月!UNIQUE_NAME] FROM payList
    结果为 [dateList].[所有 dateList].[2006].[Quarter 3].[09]

    SELECT DISTINCT [dateList:月!NAME] FROM payList
    结果为 09

    SELECT [familyList:Family Id!KEY], [Measures:Pay Price],
    [dateList:日!KEY] FROM payList
    得到 每个家庭在本数据库(表)的所有购物支出记录

    可以对上述语句的结果 进行汇总 分组
    得到 每个家庭每月总的购物消费支出

    =========
    查看上述OLE DB 的数据连接的属性可得知其连接字串为
    Provider=MSOLAP.2;Data Source=192.168.0.36;
    User ID=sa;Initial Catalog=mini
    通过上述的演练
    相信也可以通过C#等程序 对OLAP多维数据集进行利用

        protected void Button1_Click(object sender, EventArgs e)
        
    {
            
    string strConn = " Provider=MSOLAP.2;Data Source=192.168.0.36;User ID=sa;Initial Catalog=mini";
            OleDbConnection OleDbConn 
    = new OleDbConnection(strConn);
            OleDbConn.Open();
            
    //Response.Write("当前OleDbConn的状态" + OleDbConn.State.ToString());

            
    //string strComm = "select * from payList";

            
    string strComm = "SELECT [familyList:Family Id!KEY] AS 家庭编号, ";
            strComm 
    += " [familyList:Cy Id!NAME] AS 家庭成员, ";
            strComm 
    += " [dateList:月!KEY] AS 购物月份, [dateList:日!KEY] AS 购物日期,  ";
            strComm 
    += " [superMList:Super M Name!KEY] AS 购物地点, [Measures:Pay Price] AS 购物支出 ";
            strComm 
    += " FROM payList ";

            OleDbDataAdapter da 
    = new OleDbDataAdapter(strComm, OleDbConn);
            DataSet ds 
    = new DataSet();
            da.Fill(ds);        

            
    this.GridView1.DataSource = ds;
            
    this.GridView1.DataBind();
        }

    -------------
    不过 相信OLAP 及数据仓库 不是这样用的 或者这样用并没有发挥数据仓库应起的作用
    努力学习中 也希望能得到前辈高手们的指导

  • 相关阅读:
    无题
    1.1tensorflow2.0 张量
    某某大肠_tidb_集群创建用户
    某某大肠_替换TiDB 3.0集群的tidb-server命令工具
    某某大肠_配置spark的thriftserver模块
    date_and_time
    SpringBoot整合Mybatis
    SpringBoot(3)Thymeleaf使用详解
    SpringBoot(2)实现CRUD
    SpringBoot(1)入门篇
  • 原文地址:https://www.cnblogs.com/freeliver54/p/608151.html
Copyright © 2020-2023  润新知