网络编程
位置:首页>> 网络编程>> 数据库>> Oracle数据仓库的分层管理器解决方案开发者网络Oracle(2)

Oracle数据仓库的分层管理器解决方案开发者网络Oracle(2)

 来源:asp之家 发布时间:2010-07-16 13:08:00 

标签:oracle,数据库




2、分层管理器开发步骤

  分层管理器应用程序需要进行许多设置和准备。主要步骤汇总如下:

  (1)获取多层逐层细化图层时要使用的各个表的数据。

  (2)创建一个包含特殊列和特殊元数据的新的空逐层细化表(.tab 文件)。元数据为每个组件表指定一个层名,同时标识组件表中的重要列标识列和标题列。

  (3)将逐层细化表加入地图。例如,将逐层细化表加入您使用的Geoset,或通过编码方法将逐层细化表加入地图。

  (4)在应用程序中添加用户界面元素,响应逐层细化事件。

  (5)添加代码,响应用户对逐层细化工具的使用(也就是说编写分层管理器)。

  (6)该代码需要检测用户已选择的图元;确定需要添加的子图元和需要删除的图元;调用应用程序来实现分层或汇总地图图元。

  实例分析

  由于遥感影响数据量特别巨大,对于数据的存储、管理、分析和有用图形部分显示就显得非常困难,这需要用关系——对象数据库对数据进行存储。在图形显示时,为了使取得有用图层信息,减少加载时间和提高编辑效率,需要对图形进行分层显示,即用到了前面介绍的分层管理器技术。本文用VB作为编程语言,MapX作为GIS组件进行二次开发来实现分层管理技术。

  1、构建分层管理器

  构建逐层细化表,其表结构为:

Definition Table

Type Native Charset "WindowsLatin1"

Fields 3

Key Char (32);

Level Char (32);

Label Char (32) ;

  元数据关键字和对应值为:

begin_metadata

"\IsDrilldown" = "TRUE"

"\DDMap\ComponentMaps\One\File" = " Tab_YNP.TAB"

"\DDMap\ComponentMaps\One\LevelID" = " Tab_YNP "

"\DDMap\ComponentMaps\One\FeatureIDCol" = "3"

"\DDMap\ComponentMaps\One\FeatureCaptionCol" = "1"

…(其他各组件层的关键字和值与此相同)

"\DDMap\HierarchyManager\IsDLL" = "TRUE"

"\DDMap\HierarchyManager\ID" = "SomeDLL.dll"

"\DDMap\HierarchyManager\InitialLevel" = " Tab_YNP "

end_metadata

  2、分层管理器的实现

  使用 CreateCustomTool 方法实现逐层细化工具,定义为:Map1.CreateCustomTool customDrilldownExpandTool, miToolTypePoint, miDrilldownExpandCursor, miDrilldownContractCursor, miDrilldownContractCursor

  每次使用自定义逐层细化工具均会触发 ToolUsed 事件。在 ToolUsed 事件过程中,您将需要正在看的ORACLE教程是:Oracle数据仓库的分层管理器解决方案开发者网络Oracle。执行产生逐层细化行为的代码。该过程主要分为四个步骤:

  (1)使用 SelectByPoint 或 SearchAtPoint 之类的方法确定用户单击的地图图元。

  (2)确定应取代用户单击的图元的子图元集。例如,可以使用一个或多个嵌套的 Case 语句确定哪些子图元取代所选的父图元。

  (3)提取空间数据。根据前述条件,用SQL语言从数据仓库中提取信息,如:select goloc form YN. Tab_HQ_KC where Prix=68

  (4)调用 DrilldownAddFeatures 方法将子图元加入地图。

  (5)调用 DrilldownRemoveFeatures 方法从地图中删除父图元(用户单击的图元)。

  (6)对显示图层进行编辑,并把编辑结果保存。

  3、结果分析

  从实例的结果可以看出,Oracle数据仓库能够方便的对空间数据进行存储、分析、管理和输出,数据挖掘技术的应用能够灵活存取数据,而不需要加载整个数据表中的所有数据,分层管理器的应用实现了空间数据大范围快速浏览和不同主题图层的部分叠加,实际应用中有着非常方便的应用。

  结论

  高效地利用现有的海量数据是目前面临的难题之一。Oracle数据仓库技术是专门针对海量数据的管理和应用的技术,它在对象-关系型数据库、功能强大的DBMS和支持可视化检索方面有着非常明显的优势。地学数据仓库的理论在今年的时间应用中不断完善,本文在数据仓库的存储、分析和表达层方面把理论和实际应用相结合,结合分层管理GIS二次开发,开发出基于Oracle数据仓库的分层管理系统,它结合了数据仓库和分层管理的优点,在地学空间数据应用方面进行了有益的尝试。

0
投稿

猜你喜欢

  • 内容摘要:本文介绍了使用CSS结合javascript来实现对超链接的类型进行标注,让浏览者明确是zip,doc,pdf或其它格式的文件。这
  • 上期回顾:亚马逊购物用户体验分析 (一)“查找内部”功能书是在亚马逊最常被购买的产品之一,所以毋庸置疑亚马逊的开发小组已经建立了一个关于“查
  • 前一段时间就安装了AspJpeg 2.0,一直没有时间去测试,直到昨天晚上因为服务器无法访问才在本机测试下,特分享下测试结果,只针对GIF图
  • 一个能对访问者进行编号、记录访问次数、IP、时间的统计制作实例我以ACCESS库为例子,其实用SQL SERVER库也只要改一下链接库的语句
  • 这次哀悼,网页设计方面除了应用CSS灰度配色和滤镜,还用到正计时代码,就象汶川大地震已过去了多少天。下面这段代码,是从网易页面提取出来的,具
  • 首次安装、运行MySQL时,你可能会遇到一些错误,使MySQL服务器不能启动。本节的目的是帮助你诊断并纠正这些错误。解决服务器问题时你的第一
  • 求3721,163,1,4832,1980,2008,68686688,9999,17173,5173,8848中最大的数明白后,试着求一下
  • /* --注意:准备数据(可略过,非常耗时) CREATE TABLE CHECK1_T1 ( ID INT, C1 CHAR(8000)
  • XML同HTML一样,都来自Standard Generalized Markup Language, 即标准通用标记语言,简称SGML。早
  • ORA-00600:internal error code,arguments:[num],[?],[?],[?],[?]产生原因:这种错误
  • 让长字符自动换行 (比如 URL 和 Email地址) 目的:让很长的字符串,能自动换行,但是不要把短的单词从中间断开。方法如下:<s
  • 需要写个js滑动展开折叠(收缩)的效果,搜索到无忧脚本的一篇贴子,稍加修改了下使其在FF也可应用,代码如下:   <
  • 为了应用方便,您可能需要给数据库的每条记录都添加日期/时间戳,以便确定各个记录添加到数据库的时间。在Access数据库应用中,使用Now()
  • 这篇文章主要是想说,“引用只能指向具体对象而不能指向引用”//创建变量testArray 并引用数组 ["1&
  •     Dreamweaver(以下简称DW)提供了一种称为“Behavior”(行为)的机制,帮助你构建页面
  • 在学会了SELECT语句的构造和用途之后你就该学习如何使用它了。在你所掌握的数据库工具下,这可能意味着你得按下某个写着“执行”字样的按钮。在
  • 首先说说框架(Frameworks)这个词,框架就是为我们提供了一个平台一个运行环境,在如此统一的前提下我们做相关开发才能“有章可循”,要充
  • 你的SQL Server最近是否运行不正常?不,我指的不是我们肯定会遇到的通常的数据库和操作系统问题。我的意思是,你是否经历过服务器的反应迟
  • 在开发数据库应用中,经常会遇到处理时间的问题,如查询指定时间的记录等。下面就这些常见的问题,结合自己的一些经验,和大家探讨一下这类问题。首先
  • 我们打开Google的时候可能大家会发现,无论你输入Google的任何网址,它都根据你使用的语言自动判断并跳转到不同的语言界面。也就是你用不
手机版 网络编程 asp之家 www.aspxhome.com