网站大量收购独家精品文档,联系QQ:2885784924

Designer_lesson6_解析Universe中的环路问题.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Designer_lesson6_解析Universe中的环路问题

* 东方地球物理公司信息技术中心 北京中油瑞飞信息技术有限责任公司 汇报人:李悦 第六课 解析Universe中的环路问题 内容概要 一、理解环路 二、别名解决环路 三、上下文解决环路 描述环路 环路对查询的影响 环路仅影响Universe,对数据库没有影响 描述别名表 如何使用别名解决环路问题 如何使用别名解决自参考联接 的环路问题 描述上下文 如何使用上下文解决环路问题 快捷联接和环路问题 定义环路: 环路是一组连接,它定义了模式中一组表的闭合联接。当联接形成维表之间的多个路径时,将出现环路。 一、理解环路 环路对查询的影响: 结构中的联接通常用于在查询中生成SQL时创建Where子句。这些联接的目的是限制查询返回的数据。 在环路中,联接应用比预期更多的限制,因此返回错误的数据。 一、理解环路 上例环路生成的Where子句如下: WHERE{COUNTRY.COUNTRY_ID=SHOWROOM.COUNTRY_ID} AND {COUNTRY.COUNTRY_ID=REGION.COUNTRY_ID } AND {REGION.REGION_ID=CLIENT.REGION_ID } AND {CLIENT.CLIENT_ID=SALE.CLIENT_ID } AND {SHOWROOM.SHOWROOM_ID=SALE.SHOWROOM_ID } AND {SALE.SALE_ID=SALE_MODEL.SALE_ID } AND {SALE.SALE_TYPE= S } 注意:这两行SQL语句中都对COUNTRY表做了限制,目的有二: 查找展示厅国家/地区; 查找客户居住国家/地区。 这样就产生了一个额外的限制,导致查询仅在展示厅国家/地区和客户所在国家/地区相同时才返回数据。 即 生成的报表仅显示美国客户在美国购买汽车和英国客户在英国购买汽车的收入。 环路出现在Universe中而不出现在数据库中(??) 在数据库中,表之间的多个路径可能是有效的,并可以实施以满足特定的用户需求。如果在查询中单独包含每个路径,查询将返回不同的结果集。 但是,您在Designer中设计的模式通常允许包括多个路径的查询,但关系数据库可能没有设计成可处理该类查询,因此返回的信息可能不正确。 返回的行是每个路径查询结果的交集,因此返回的行比预期的要少。并且很难再检查结果时发现问题。 一、理解环路 描述别名 别名表解决环路问题 别名表解决自限制联接问题 什么是别名表?怎样的环路问题可用别名表解决? 创建别名表的方法及其优劣势?用别名表解决环路问题的步骤。。。 什么是自限制联接?如何用别名表解决自限制联接产生的环路? 二、别名解决环路问题 定义别名表: 出于不同的目的,通过在同一查询中使用同一个表两次,别名可以中断环路。别名与基表是一样的,只是名称不同。别名中的数据与原始表完全相同,但不同的名称使SQL误以为您使用的是两个不同的表。 二、别名解决环路问题 注意:如果环路中仅有一个表接收两个联接中的“一”末端,此环路问题可以通过创建别名方法解决。 二、别名解决环路问题 检测环路 创建别名表 重新定义表对象 步骤 二、别名解决环路问题 方法 优势 劣势 检测环路 在应用环路前查看环路。 检查结果包括用上下文方法解决的环路。 检测别名 能检测到所有的候选别名。 不会判断解决的优先次序。 插入别名 有选择的建立别名表,最小化表中的对象。 必须理解定义候选别名的需要。 三种检测和创建别名表的方法: 注意:当使用别名检测功能前需要确保所有表都在设置了联接和基数。 二、别名解决环路问题 定义表对象步骤: 二、别名解决环路问题 自限制联接定义: 有时,联接不需要包括两个不同的表。可以用表自身联接,创建自限制联接的方法解决。自限制联接是表中的一列与另一列联接产生的。自联接常用于比较同一表中不同列的值。 描述上下文 上下文解决环路问题 快捷联接和环路 什么是上下文?怎样的环路问题可用上下文解决? 创建上下文的方法及其优劣势?用上下文解决环路问题的步骤。。。 什么是快捷联接?建立快捷联接的步骤? 三、上下文解决环路问题 定义上下文 上下文是定义查询路径的一组联接。 对象与其所在的上下文保持一致。当查询中包含不同上下文的同一对象时,会产生多条Select语句。查询结果合并在立方体中,这样就避免了。 三、上下文解决环路问题 注意:当模式中多个事实表公用一个维表时,常使用上下文方法解决环路问题。 注意:当模式中多个事实表公用一个维表时,常使用上下文方法解决环路问题。 Title 三、上下文解决环路问题 步骤 三、上下文解决环路问题

您可能关注的文档

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档