[发明专利]结构化查询语言中的路径表达式无效
申请号: | 200680008536.1 | 申请日: | 2006-03-09 |
公开(公告)号: | CN101164065A | 公开(公告)日: | 2008-04-16 |
发明(设计)人: | B·拉塔克瑞施纳;C·坎宁安;E·扎伯克利特斯基;J·A·布莱克利 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 顾嘉运 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 结构 查询 语言 中的 路径 表达式 | ||
技术领域
本发明一般涉及查询语言,尤其涉及利用数据库中的现有关系的连接的公式化。
发明背景
计算机技术(例如,微处理器速度、存储器能力、数据传输带宽、软件功能等)的日益进步一般对计算机在各种行业中的应用做出了贡献。通常提供了常被配置为服务器阵列的更强大的服务器系统来服务源自诸如万维网等外部源的请求。
当可用电子数据的数量增长时,以便于用户友好且快速的数据搜索和检索的可管理方式储存这些数据变得愈发重要。数据库管理系统(DBMS)通常可管理任何形式的数据,包括文本、图像、声音和视频。当今,一种常见的方法是将电子数据储存在一个或多个数据库中。一般而言,典型的数据库可被称为有组织的信息集合,其中数据被结构化使得计算机程序可快速搜索和选择例如期望的各个数据。通常,数据库内的数据是经由一张或多张表来组织的。这些表被排列成行和列的数组。据此,数据库和文件结构是由软件应用程序来确定的。
同样,表可包括一组记录,且记录包括一组字段。记录通常被索引为表内的行,而记录字段通常被索引为列,使得索引的行/列对可引用表内的一个特定数据。例如,行可储存与销售交易、个人或项目有关的完整的数据记录。同样,表的列可定义具有相同的通用数据格式的行的离散部分,而列可定义记录的字段。
对这类表的查询可根据标准查询语言(例如,结构化查询语言(SQL))来构造以访问数据库中的表的内容。同样,数据可经由外部源输入(例如,导入)到表中。此外,数据库应用程序设计者通常可例如使用诸如实体关系模型和统一数据模型语言(UML)等数据建模语言来对世界建模。
这些模型可按照实体和关系来表示世界。例如,在持有与作者(Author)和文档(Documents)有关的数据的数据库中,文档和作者可作为实体来对待,且“由……编写(WrittenBy)”可被设计为关系。关系定义通常可具有与其相关联的基数。由此,在数据库环境中,可以存在一对一(1∶1)、一对多(1∶N)以及多对多(N∶M)关系(其中N和M是整数)。
一对一和一对多关系可通过引用约束在SQL中捕捉。同样,多对多关系通常可通过引入捕捉这一关系的中间表(例如,WrittenBy)来建模。通常,SQL查询和更新语句的语义稳固地扎根于关系代数学。然而,通过连接导航多个表的当今的各种SQL查询的公式化通常太过冗长。
例如,在作者和文档表的多对多关系中,其中文档可具有多个作者而作者可编写多个文档,首先需要清楚地说明表之间的关系。随后,需要指定连接条件并应用各种过滤器表达式。因此,公式化这类查询可能需要采用多个表,且在SQL级别处,与这一连接有关的所有细节通常应当被清楚地说明。因此,需要指定可能会进一步导致冗长公式化的多个定义,这会导致对应用程序开发者的难以处理的接口以及系统资源的浪费。
因此,需要克服与常规系统和设备相关联的上述示例性缺陷。
发明概述
以下提出了本发明的简化概述以提供对本发明的一个或多个方面的基本理解。这一概述不是本发明的广泛综述。它既不旨在标识本发明的关键或决定性要素,也不旨在描绘本发明的范围。相反,该概述的唯一目的是以简化的形式提出本发明的某些概念,作为之后提出的更详细描述的序言。
本发明提供了可通过经由采用引用连接捕捉多个表之间的现有联接的语义来扩展查询语言并定义连接的简单公式化的系统和方法。这一引用连接(REF JOIN)可利用数据库中的现有关系(例如,关系型元数据中捕捉的主键-外键关系)来公式化句法简明性。为在两个源表(例如,左表源{LTS}和右表源{RTS})之间提供根据本发明的引用连接,一般在两者之间应仅存在一个引用约束。
例如,当SQL编译器可以无歧义地映射引用连接实现的简洁表示法时,其中通常在关系之间仅存在一条路径。在其它情况下,可提示用户提供附加信息以唯一地定义这一单一路径。由此,根据本发明的一方面的SQL编译器可采用关于引用约束的现有知识来允许将引用连接(REF JOIN)表达式无歧义地变换成列上的等价INNER JOIN(内部连接),该连接参与两张表之间的引用约束。因此,可提供更简单的查询句法和语义来表达例如对主键/外键关系的多表连接导航。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680008536.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:空调及其控制方法
- 下一篇:用于容器传输系统的夹爪