System, method, and program, for object building in queries over object views
    13.
    发明授权
    System, method, and program, for object building in queries over object views 失效
    系统,方法和程序,用于在对象视图的查询中构建对象

    公开(公告)号:US06226637B1

    公开(公告)日:2001-05-01

    申请号:US09392360

    申请日:1999-09-08

    IPC分类号: G06F1730

    摘要: An object language application (e.g., C++, JAVA, etc.,) issues a query over a view and receives back, as query results, handles to application type objects which can be further manipulated by the application. A view is defined herein as a collection of a view type, and a view type is defined as a class or type. A tool is used by a programmer writing the application to create object language class definitions that are based upon the view type of the view referenced by the query. Upon receipt of the query referencing a view type, a query engine generates a query plan that builds mock (i.e., proxy) application type objects in memory based upon the view types. The application objects have a form that is consistent with the class definition for a type of object returned as a result. The application can run methods on the application type objects or point to other application type objects from the handles, to the application objects, that are returned to the application; and these manipulations will be understood by the query engine. In a preferred embodiment, query rewrite optimizations are applied to the queries over views requiring object building in order to optimize the evaluation of the query and the building of view objects as query results. Query rewrite optimizations can also be applied so that parts of the query are pushed down to the DBMS to minimize the number of objects that need to be built.

    摘要翻译: 对象语言应用程序(例如,C ++,JAVA等)通过视图发出查询,并作为查询结果接收回应用于可由应用程序进一步操纵的应用程序类型对象的句柄。 视图在此被定义为视图类型的集合,视图类型被定义为类或类型。 编写应用程序的程序员使用一个工具来创建基于查询引用的视图的视图类型的对象语言类定义。 在接收到引用视图类型的查询时,查询引擎生成基于视图类型在存储器中构建模拟(即代理)应用程序类型对象的查询计划。 应用程序对象具有与返回的对象类型的类定义一致的表单。 应用程序可以在应用程序类型对象上运行方法,或者从句柄中指向其他应用程序类型对象,返回给应用程序的应用程序对象; 这些操作将被查询引擎所理解。 在优选实施例中,通过需要对象构建的视图将查询重写优化应用于查询,以便优化查询的评估和视图对象的构建作为查询结果。 也可以应用查询重写优化,以便部分查询被压缩到DBMS以最小化需要构建的对象数量。

    System, method, and program for applying query rewrite technology to
object building
    14.
    发明授权
    System, method, and program for applying query rewrite technology to object building 失效
    将查询重写技术应用于对象构建的系统,方法和程序

    公开(公告)号:US6134540A

    公开(公告)日:2000-10-17

    申请号:US853294

    申请日:1997-05-09

    IPC分类号: G06F12/00 G06F17/30

    摘要: The system, method, and program of this invention enables an object language application (e.g., C++, JAVA, etc.,) to issue a query over a view and to receive back, as query results, handles to application type objects which can be further manipulated by the application. A view is defined herein as a collection of a view type, and a view type is defined as a class or type. Upon receipt of the query referencing a view type, a query engine generates a query plan that builds mock (i.e., proxy) application type objects in memory based upon the view types. The application can run methods on the application type objects or point to other application type objects from the handles, to the application objects, that are returned to the application; and these manipulations will be understood by the query engine. In a preferred embodiment, query rewrite optimizations are applied to the queries over views requiring object building in order to optimize the evaluation of the query and the building of view objects as query results. For example, when a query over a view is analyzed and it is determined that the query is not requesting a handle, and is not referencing a method, but only asks for values, no objects are built. Also, if a query traverses a reference type attribute, but the query can be transformed into a join or outer join operation between relational tables, then no object building is required. In these above described situations, the rewritten query can be pushed down to the database management system of the data source for resolution. If the query does request a handle or references a method, then some object building is required. However, query rewrite techniques can still be applied so that parts of the query are pushed down to the DBMS to minimize the number of objects that are built.

    摘要翻译: 本发明的系统,方法和程序使得对象语言应用(例如,C ++,JAVA等)能够通过视图发出查询,并且作为查询结果接收返回到可以是应用程序类型对象的句柄 由应用进一步操纵。 视图在此被定义为视图类型的集合,视图类型被定义为类或类型。 在接收到引用视图类型的查询时,查询引擎生成基于视图类型在存储器中构建模拟(即代理)应用程序类型对象的查询计划。 应用程序可以在应用程序类型对象上运行方法,或者从句柄中指向其他应用程序类型对象,返回给应用程序的应用程序对象; 这些操作将被查询引擎所理解。 在优选实施例中,通过需要对象构建的视图将查询重写优化应用于查询,以便优化查询的评估和视图对象的构建作为查询结果。 例如,当分析视图上的查询并且确定查询未请求句柄并且未引用方法,但是仅询问值时,不构建对象。 此外,如果查询遍历引用类型属性,但是查询可以转换为关系表之间的连接或外部连接操作,则不需要构建对象。 在这些上述情况下,可以将重写的查询推送到数据源的数据库管理系统进行解析。 如果查询确实请求一个句柄或引用一个方法,那么需要建立一些对象。 然而,仍然可以应用查询重写技术,以便查询的部分被压下到DBMS以最小化构建的对象的数量。

    System, method, and program for object building in queries over object
views
    15.
    发明授权
    System, method, and program for object building in queries over object views 失效
    用于在对象视图查询中构建对象的系统,方法和程序

    公开(公告)号:US6122627A

    公开(公告)日:2000-09-19

    申请号:US853976

    申请日:1997-05-09

    IPC分类号: G06F12/00 G06F17/30

    摘要: The system, method, and program of this invention enables an object language application to issue a query over a view and to receive back, as query results, handles to application type objects which can be further manipulated by the application. A view is defined herein as a collection of a view type, and a view type is defined as a class or type. Upon receipt of the query referencing a view type, a query engine generates a query plan that builds mock (i.e., proxy) application type objects in memory based upon the view types. The application objects have a form that is consistent with the class definition for a type of object returned as a result. The application can run methods on the application type objects or point to other application type objects from the handles, to the application objects, that are returned to the application; and these manipulations will be understood by the query engine. In a preferred embodiment, query rewrite optimizations are applied to the queries over views requiring object building in order to optimize the evaluation of the query and the building of view objects as query results.

    摘要翻译: 本发明的系统,方法和程序使得对象语言应用程序能够通过视图发出查询,并且作为查询结果接收对应用程序类型对象的处理,该应用程序类型对象可由应用程序进一步操纵。 视图在此被定义为视图类型的集合,视图类型被定义为类或类型。 在接收到引用视图类型的查询时,查询引擎生成基于视图类型在存储器中构建模拟(即代理)应用程序类型对象的查询计划。 应用程序对象具有与返回的对象类型的类定义一致的表单。 应用程序可以在应用程序类型对象上运行方法,或者从句柄中指向其他应用程序类型对象,返回给应用程序的应用程序对象; 这些操作将被查询引擎所理解。 在优选实施例中,通过需要对象构建的视图将查询重写优化应用于查询,以便优化查询的评估和视图对象的构建作为查询结果。

    Optional quantifiers in relational and object-oriented views of database
systems
    16.
    发明授权
    Optional quantifiers in relational and object-oriented views of database systems 失效
    数据库系统的关系和面向对象视图中的可选量词

    公开(公告)号:US5797136A

    公开(公告)日:1998-08-18

    申请号:US539561

    申请日:1995-10-05

    IPC分类号: G06F17/30

    摘要: A system, method, and program enables database management systems for relational and object-oriented databases to recognize a quantifier in a query as being designated as optional. An optional quantifier will participate in a query depending upon certain conditions. If the columns (or objects) projected out in the view that are dependent upon the quantifier are not used by the query, the quantifier is dropped from the definition of the view. The query is processed using only the relations in the view not associated with the optional quantifier. The results returned are as if a left outer join operation with duplicate elimination had been performed, although the actual processing of the query was independent of, i.e., did not involve, a left outer join operation. If the columns (or objects) projected out in the view that are dependent upon the quantifier are used by the query, the optional quantifier remains in the definition of the view and the query is processed using a join operation.

    摘要翻译: 系统,方法和程序使关系数据库和面向对象数据库的数据库管理系统能够将查询中的量词识别为可选。 可选择的量词将根据某些条件参与查询。 如果视图中投射出的依赖于量词的列(或对象)不被查询使用,则从视图的定义中删除量词。 仅使用与可选量词相关联的视图中的关系来处理查询。 返回的结果就好像执行了重复删除的左外连接操作,尽管查询的实际处理与左外连接操作无关,即不涉及。 如果视图中投射出的依赖于量词的列(或对象)由查询使用,则可选量词保留在视图的定义中,并使用连接操作处理查询。