Skip Headers

# Query Languages

Previous

Next

Using TopLink, you can express a query using any of the following query languages:

- SQL Queries

- EJB QL Queries

- XML Queries

- EIS Interactions

- Query-by-Example

In most cases, you can compose a query directly in a given query language or, preferably, you can construct a `DatabaseQuery` with an appropriate `Call` and specify selection criteria using a TopLink `Expression`. Although composing a query directly appears to be the simplest approach (and for simple operations or operations on unmapped data, it is), using the `DatabaseQuery` approach offers the compelling advantage of confining your query to your domain object model and avoiding dependence on data source schema implementation details. Oracle recommends that you compose your queries using `DatabaseQuery`, `Call`, and `Expression`.