Database Language Extended to Accommodate Entity-Relationship Models
First Claim
1. A computer-implemented method comprising:
- providing a database organized according to a relational model;
providing a database engine in communication with the database utilizing a language describing the relational model;
providing an application comprising an entity-relationship model (ERM) including a first entity, a second entity, and a relationship between the first entity and the second entity; and
causing a query engine of the application to communicate a query to the database engine utilizing a language extension comprising,a first structured entity type including a first key and indicating the first entity,a second structured entity type including a second key and indicating the second entity, anda third structured association type reflecting the relationship; and
causing the database engine to return a query result to the query engine based upon the language extension.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments extend the relational model and language of standard SQL, to recognize features of higher level entity-relationship models (ERMs). SQL extensions implemented in the data design language (DDL) incorporate Entities (and Views) having custom-defined/semantic structure, rather than being limited to primitive types (e.g. flat tables as in standard SQL). Entities are defined similar to structured types with an underlying persistency, but with a uniquely identifying leading key. In DDL, these entities are combined with associations in the data model. The associations of the extended SQL reflect relationships between entities in the ERM. Associations are specified by adding an element to a source entity, with an association type pointing to a target entity. This may be complemented by providing optional information (e.g., cardinality, keys, filter conditions), up to a complete JOIN condition. In the query language (QL), JOINs may be replaced by the use of simple path expressions.
-
Citations
18 Claims
-
1. A computer-implemented method comprising:
-
providing a database organized according to a relational model; providing a database engine in communication with the database utilizing a language describing the relational model; providing an application comprising an entity-relationship model (ERM) including a first entity, a second entity, and a relationship between the first entity and the second entity; and causing a query engine of the application to communicate a query to the database engine utilizing a language extension comprising, a first structured entity type including a first key and indicating the first entity, a second structured entity type including a second key and indicating the second entity, and a third structured association type reflecting the relationship; and causing the database engine to return a query result to the query engine based upon the language extension. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A non-transitory computer readable storage medium embodying a computer program for performing a method, said method comprising:
-
providing a database organized according to a relational model; providing a database engine in communication with the database utilizing a language describing the relational model; providing an application comprising an entity-relationship model (ERM) including a first entity, a second entity, and a relationship between the first entity and the second entity; and causing a query engine of the application to communicate a query to the database engine utilizing a language extension comprising, a first structured entity type including a first key and indicating the first entity, a second structured entity type including a second key and indicating the second entity, and a third structured association type reflecting the relationship; and causing the database engine to return a query result to the query engine based upon the language extension. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer system comprising:
-
one or more processors; a software program, executable on said computer system, the software program configured to; provide a database organized according to a relational model; provide a database engine in communication with the database utilizing a language describing the relational model; provide an application comprising an entity-relationship model (ERM) including a first entity, a second entity, and a relationship between the first entity and the second entity; and cause a query engine of the application to communicate a query to the database engine utilizing a language extension comprising, a first structured entity type including a first key and indicating the first entity, a second structured entity type including a second key and indicating the second entity, and a third structured association type reflecting the relationship; and causing the database engine to return a query result to the query engine based upon the language extension. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification