The ability to manage, store, retrieve, and display large amounts of dynamic content (data) is perhaps the primary reason for implementing a Content Management System (CMS) such as Joomla!. For performance, accessibility, and reliability reasons, most of the content or data is stored in a relational database and accessed by executing SQL statements. Joomla! comes with a set of core classes and drivers that provide native support for two database systems while allowing for the possibility of extending support to additional database systems. The core classes also provide transparent connectivity and consistent SQL query syntax which significantly simplifies data access.
This chapter will cover the following topics: