Apparatus and method for synthesizing a query for accessing a relational data base
First Claim
1. A method for operating a computing apparatus to translate into a linear query a graphic language query expressed as one or more elements, including example elements and implied operand predicates, appearing in rows and columms of an example table including one or more source and target tables and, optionally, in condition blocks, comprising the steps of:
- generating row names into a row name table having one entry for each row in a source table;
for each data field within each row named in said row name table which contains an example element definition or implied operand predicate, generating and loading into a column data table an entry specifying the row name, column name, and data; and
generating into a conditions table an entry containing a basic predicate for each column data table entry containing an implied operand predicate or an example element having an implied condition;
thereby establishing in said row name table, column data table, and conditions table a data structure for synthesizing into a linear query a graphic language query specified as a target point query, or a combined print query, or an insert query, or an update query, or a delete query.
1 Assignment
0 Petitions
Accused Products
Abstract
A linear query for accessing a relation data base in computer storage is synthesized from a graphic query input at a user terminal. The graphic query may be one of a combined print query, a target print query, an insert query, a delete query, or an update query. According to one embodiment, the linear query is expressed in Structured Query Language (SQL) syntax, and the graphic query in Query By Example (QBE) syntax. Responsive to a QBE combined print query or target print query, an SQL select query is generated comprising the UNION of one or more generated select statements. Responsive to a QBE delete query, an SQL delete query is generated from the logical OR of generated condition statements including an outer query DELETE and a SELECT* subquery. Responsive to a QBE update query, an SQL update query is generated including a SET clause and any generated WHERE clause and subquery. Responsive to a QBE insert query, an SQL insert query is generated to include an INSERT statement and any generated SELECT statement.
-
Citations
14 Claims
-
1. A method for operating a computing apparatus to translate into a linear query a graphic language query expressed as one or more elements, including example elements and implied operand predicates, appearing in rows and columms of an example table including one or more source and target tables and, optionally, in condition blocks, comprising the steps of:
-
generating row names into a row name table having one entry for each row in a source table; for each data field within each row named in said row name table which contains an example element definition or implied operand predicate, generating and loading into a column data table an entry specifying the row name, column name, and data; and generating into a conditions table an entry containing a basic predicate for each column data table entry containing an implied operand predicate or an example element having an implied condition; thereby establishing in said row name table, column data table, and conditions table a data structure for synthesizing into a linear query a graphic language query specified as a target point query, or a combined print query, or an insert query, or an update query, or a delete query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computing apparatus for translating into a linear query a graphic language query expressed as one or more elements, including example elements and implied operand predicates, appearing in rows and columns of an example table including one or more source and target tables and, optionally, in condition blocks, comprising:
-
means for generating row names into a row name table having one entry for each row in a source table; means, operable for each data field within each row named in said row name table which contains an example element definition or implied operand predicate, for generating and loading into a column data table an entry specifying the row name, column name, and data; means for generating into a conditions table an entry containing a basic predicate for each column data table entry containing an implied operand predicate or an example element having an implied condition; thereby establishing in said row name table, column data table, and conditions table a data structure for synthesizing into a linear query a graphic language query specified as a target print query, or a combined print query, or an insert query, or an update query, or a delete query.
-
Specification