×

System and method of providing ad hoc query capabilities to complex database systems

  • US 20060173813A1
  • Filed: 01/04/2006
  • Published: 08/03/2006
  • Est. Priority Date: 01/04/2005
  • Status: Abandoned Application
First Claim
Patent Images

1. A method for providing ad hoc query capabilities to a database system, the database system comprised of a plurality of data tables to store application data, a binding table to function as a common joining table for said plurality of data tables, a relations table to store information required to join said binding table with each of said plurality of data tables, and a grouping table to store data to limit the result set of a search and to provide logical grouping information for the fields of said plurality of data tables, said grouping table comprising at least a group identifier, a joining key, and a group field, the method comprising the steps of:

  • configuring said binding, relations, and grouping tables;

    allowing a user to select one search type from a plurality of search types;

    displaying the group names stored in said grouping table to the user;

    allowing the user to optionally select a group name on which to limit the search results, said group name selected from the grouping table;

    displaying the field names in said plurality of data tables which are available for searching;

    allowing the user to select the fields to be returned as a result set and assign zero or more conditionals to each selected field to filter the result set;

    inserting each selected field and said zero or more qualifiers into a selected fields list;

    inserting said binding table as the first element in a table list;

    distinctly inserting each table associated with each field in said selected fields list into said table list, wherein the table associated with the first selected field is the base table;

    assigning a unique qualifier to each table said table list;

    iterating over said selected fields list to generate the SELECT and WHERE clauses for a database query, wherein said WHERE clause is generated only if one or more conditionals have been assigned to a selected field;

    iterating over said table list starting from the base table, for each table in said table list, querying said relations table for the method of joining the tables in said table list to said binding table and generating the joining code for said database query;

    if the user has selected to group the search results, generating code to join said grouping table with said binding table and the grouping code for said database query in accordance with the user'"'"'s selected grouping choice;

    executing said generated database query code against said plurality of database tables; and

    displaying the result set to the user.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×