摘要:
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.
摘要:
The system, method, and program of this invention provides for a new type of quantifier that is useful for object-oriented queries that reference collections and nested collections of objects. The invention is applicable to any other type of database where the data has a hierarchical relationship, also. This new type of quantifier is called an outer quantifier. The outer quantifier appears in the language of the query (in the FROM clause) and creates a new runtime semantic. The function and semantics provided by outer quantifiers is similar to that provided partly by left outer joins in relational systems. Outer quantifiers are bound to a null instance if the collection over which they are defined is empty. Outer quantifiers are a simple way of expressing queries so that objects having empty collections of nested objects are included in the result, also.
摘要:
A method of, and system for, interactively accessing information in response to a user command having a predefined operator and specifying one of a plurality of collections of information. The collections of information are stored in an object-oriented database in a hierarchical arrangement of data members. The hierarchical arrangement can include one level of data members and in which one of the data members is composed of a next level of data members. Each data member is stored according to one of a system-specified and a user-specified storage definition. A set of user-specified storage definitions is defined from the plurality of storage definitions. Upon detecting the user command, the specified collection of information is analyzed to determine which data members of the one level are stored according to one of the storage definitions of the set. Each data member not in the set is added to a projection list; each data member in the set is expanded into a next level of data members composing the data member in the set. Expanding can include analyzing each data member of the next level to determine whether it is in the set and if so again expanding up until a specified level of expanding. The projection list is processed to return to the user the information corresponding to the data members in the projection list. The invention may be implemented in a Parser layer of a known layered architecture for database systems.
摘要:
Disclosed is a technique for manipulating instance data of a base model. A ViewType, a root object representing an object of the base model, and an operation are received. Whether the ViewType and the root object are compatible is determined. When the ViewType and the root object are compatible, the operation is applied to the instance data of the base model while using the ViewType to traverse the instance data.
摘要:
Disclosed is a technique for processing a base model. The base model is received. Then, the base model is used to create a ViewType comprising a ViewType object, one or more ViewList objects corresponding to classes in the base model, and one or more ViewElem objects corresponding to attributes in the base model.
摘要:
Disclosed is a technique for manipulating instance data of a base model. A ViewType, a root object representing an object of the base model, and an operation are received. Whether the ViewType and the root object are compatible is determined. When the ViewType and the root object are compatible, the operation is applied to the instance data of the base model while using the ViewType to traverse the instance data.
摘要:
Disclosed is a technique for processing a base model. The base model is received. Then, the base model is used to create a ViewType comprising a ViewType object, one or more ViewList objects corresponding to classes in the base model, and one or more ViewElem objects corresponding to attributes in the base model.
摘要:
Disclosed is a technique for manipulating instance data of a base model. A ViewType, a root object representing an object of the base model, and an operation are received. Whether the ViewType and the root object are compatible is determined. When the ViewType and the root object are compatible, the operation is applied to the instance data of the base model while using the ViewType to traverse the instance data.
摘要:
Disclosed is a technique for processing a base model. The base model is received. Then, the base model is used to create a ViewType comprising a ViewType object, one or more ViewList objects corresponding to classes in the base model, and one or more ViewElem objects corresponding to attributes in the base model.
摘要:
Disclosed is a technique for generating a relational view. Initially, identification of a base model, a relational schema, and a ViewType are received. Then, a statement to create a relational view of the instance data for the base model using the ViewType is automatically generated.