Query class and operationScope of ChangeExtends the rdbms critertia api - Query class that stores complete querys - set operations like union, intercept and except Rationale
- Store complete queries.
- Provide a tool to represent set operations in criteria / OO world. Functionality
intercept and except will not work on mysql databases
- new interfaces
- rdbms.query.QueryExecutable
- rdbms.query.SelectQueryExecutable
- the api provides the following classes:
- rdbms.query.SetOperation
- rdbms.query.SelectQuery
- rdbms.query.UpdateQuery
- rdbms.query.DeleteQuery
- Rdbms.Criteria needs to be extended by a method getSelectQueryString(),
which will fetch the sql statement as string.
- The method rdbms.Criteria::executeJoin() will be removed.
- The class rdbms.Query will be moved into the package rdbms.query.Query.
- The class rdbms.Query will be declared abstract. UML diagram
[[img:uml.png]] code examples
uses( Would print: QueryA: select job_id, title from JOBS.job where job_id = 5
QueryB: select job_id, name from JOBS.Person
QueryA union QueryB: select job_id, title from JOBS.job where job_id = 5
union select job_id, name from JOBS.Person
Security considerations
n/a Speed impact
n/a Dependencies
criteria api Related documents
- patch against skeleton
http://xp-framework.net/rfc/contrib/rfc0131/skeleton.diff
- patch against ports
http://xp-framework.net/rfc/contrib/rfc0131/ports.diff
- uml diagram as dia file
http://xp-framework.net/rfc/media/0131/uml.dia Comments
- wagner (Di 3 Jul 2007 18:00:41 CEST):
Changed inheritances to interfaces for clearer structure SetOperation::union( <EOF> | Table of contents |