Method for generating a relational database query statement using one or more templates corresponding to search conditions in an expression tree
AssigneeOracle International Corporation
InventorsHarpinder S. Madan, Brian Gustafson, Uppili Srinivasan
Life of this patent
Estimating the term…
Abstract
A method and system for representing objects in a relational database is provided. In one aspect, the invention provides a method and system for storing directory information objects in a relational database management system. In addition, a method and system for generating a statement in a database query language to search or manipulate objects or entries that are stored in a relational database is disclosed. An aspect of the invention is directed to a method and system that can automatically generate a SQL statement for an LDAP search filter.
Claims38
A method for searching for directory information stored in a relational database, comprising the steps of:
- receiving a search request for the directory information;
- parsing the search request to generate an expression tree including a plurality of nodes, each node representing a condition operator and having at least one branch representing at least one expression modified by the condition operator;
- identifying search conditions in the expression tree;
- identifying at least one template corresponding to the search conditions, the at least one template selected from a plurality of possible templates;
- generating a statement in a database query language that searches for a directory information object stored in the relational database from the at least one template, the at least template inserting a constraint in the statement based upon a hierarchical scope of the search request for the directory information.
A method for searching for directory information stored in a relational database, comprising:
- parsing a search request for the directory information to generate an expression tree;
- identifying search conditions in the expression tree;
- identifying a base template corresponding to the expression tree, the base template comprising one or more other templates, each of the one or more other templates corresponding to at least one of the search conditions in the expression tree;
- and
- generating a statement in a database query language to search for directory information stored in the relational database using the base template.
A medium having stored thereon a sequence of instructions which, when executed by a processor, causes an execution of a process for searching for directory information in a relational database, the process comprising:
- generating an expression tree by parsing the search request, the expression tree comprising a plurality of search conditions;
- identifying a base template corresponding to the expression tree, the base template comprising one or more other templates, each of the one or more other templates corresponding to at least one of the plurality of search conditions in the expression tree;
- and
- generating a statement in a database query language to search for directory information in the relational database using the base template.
A medium having stored thereon a sequence of instructions which, when executed by a processor, causes an execution of a process of searching for directory information objects in a relational database by performing the steps of:
- receiving a search request for the directory information;
- parsing the search request to generate an expression tree including a node representing a condition operator and having a branch representing an expression modified by the condition operator;
- identifying search conditions in the expression tree;
- identifying at least one template corresponding to the search conditions, the at least one template selected from a plurality of possible template;
- generating a statement in a database query language that searches for a directory information objects stored in the relational database from the at least one template, the at least template inserting a constraint in the statement based upon a hierarchical scope of the search request for the directory information objects.
A method for searching for directory information stored in a relational database, comprising the steps of:
- parsing a search request for the directory information to generate an expression tree;
- identifying search conditions in the expression tree;
- identifying at least one template corresponding to the search conditions;
- and
- generating a statement for searching for a directory information object stored in the relational database in a database query language using the at least one template, each of the at least one template inserting at least one subquery in response to a corresponding search condition in the expression tree.
A medium having stored thereon a sequence of instructions which, when executed by a processor, causes an execution of a process of searching for directory information in a relational database by performing the steps of:
- receiving a search request;
- parsing the search request to generate an expression tree;
- identifying at least one template corresponding to search conditions in the expression tree;
- and
- generating a statement for searching for a directory information object stored in the relational database in a database query language using the at least one template, each of the at least one template inserting at least one subquery in response to a corresponding search condition in the expression tree.
Dependencies are inferred from the claim text.