Not all features of SQL can (or should) be mapped in the object model in terms of Persistent objects. For such cases Cayenne provides a powerful mechanism for running both selecting and non-selecting SQL using scriptable SQLTemplate query. The following chapters describe how SQLTemplates can be created and executed, showing how to build SQL dynamically, bind parameters and describe result sets with SQLTemplate scripting features.

### Sections

1. SQLTemplate Basics
2. Scripting SQLTemplate
3. SQLTemplate Result Mapping
4. Advanced SQLTemplate