+ Getting started ++ Requirements ++ Installation ++ Compiling ++ Starting new project ++ Working with existing databases ++ Exporting classes + Connection management ++ DSN, the Data Source Name ++ Opening a new connection ++ Lazy-connecting to database ++ Managing connections ++ Connection-component binding + Object relational mapping ++ Introduction ++ Table and class naming ++ Table options ++ Columns ++ Constraints and validators ++ Record identifiers +++ Introduction +++ Autoincremented +++ Natural +++ Composite +++ Sequence ++ Indexes +++ Introduction +++ Adding indexes +++ Index options +++ Special indexes ++ Relations +++ Introduction +++ Relation aliases +++ Foreign key associations ++++ One-to-One ++++ One-to-Many, Many-to-One ++++ Tree structure +++ Join table associations ++++ One-to-One ++++ One-to-Many, Many-to-One ++++ Many-to-Many ++++ Self-referencing +++ Inheritance ++++ One table many classes ++++ One table one class ++++ Column aggregation +++ Foreign key constraints ++++ Introduction ++++ Constraint actions ++ Hierarchical data +++ Introduction ++++ About ++++ Setting up ++++ Node interface ++++ Tree interface ++++ Traversing or Walking Trees ++++ Read me +++ Adjacency list ++++ Introduction +++ Nested set ++++ Introduction ++++ Setting up ++++ Tree options ++++ Node support ++++ Tree support ++++ Read me +++ Materialized path ++++ Introduction +++ Examples + Working with objects ++ Dealing with relations +++ Creating related records +++ Retrieving related records +++ Updating related records +++ Deleting related records +++ Working with associations ++ Component overview +++ Manager ++++ Introduction ++++ Opening a new connection ++++ Managing connections +++ Connection ++++ Introduction ++++ Available drivers ++++ Getting a table object ++++ Flushing the connection ++++ Querying the database ++++ Getting connection state +++ Record ++++ Introduction ++++ Creating new records ++++ Retrieving existing records ++++ Accessing properties ++++ Updating records ++++ Deleting records ++++ Getting record state ++++ Getting object copy ++++ Serializing ++++ Checking Existence ++++ Callbacks +++ Collection ++++ Introduction ++++ Accessing elements ++++ Adding new elements ++++ Getting collection count ++++ Saving the collection ++++ Deleting collection ++++ Key mapping ++++ Loading related records ++++ Collection expanding +++ Table ++++ Introduction ++++ Getting table information ++++ Finder methods ++++ Custom table classes ++++ Custom finders ++++ Getting relation objects ++ Fetching objects + Configuration ++ Introduction ++ Levels of configuration ++ Setting attributes +++ Portability +++ Identifier quoting +++ Table creation +++ Fetching strategy +++ Batch size +++ Session lockmode +++ Event listener +++ Validation +++ Offset collection limit + Advanced components ++ Eventlisteners +++ Introduction +++ Creating new listener +++ List of events +++ Listening events +++ Chaining +++ AccessorInvoker +++ Creating a logger ++ Validators +++ Introduction +++ More Validation +++ Valid or Not Valid +++ List of predefined validators ++ View +++ Intoduction +++ Managing views +++ Using views ++ Cache +++ Introduction +++ Query cache ++ Locking Manager +++ Introduction +++ Examples +++ Planned +++ Technical Details +++ Maintainer ++ Db_Profiler +++ Introduction +++ Basic usage +++ Advanced usage ++ Hook +++ Introduction +++ Building queries +++ List of parsers ++ Query +++ Introduction +++ selecting tables +++ limiting the query results +++ setting query conditions +++ HAVING conditions +++ sorting query results ++ RawSql +++ Introduction +++ Using SQL +++ Adding components +++ Method overloading ++ Db +++ Introduction +++ Connecting to a database +++ Using event listeners +++ Chaining listeners ++ Exceptions +++ Overview +++ List of exceptions + DQL (Doctrine Query Language) ++ Introduction ++ SELECT queries +++ DISTINCT keyword +++ Aggregate values ++ UPDATE queries ++ DELETE queries ++ FROM clause ++ WHERE clause ++ Conditional expressions +++ Literals +++ Input parameters +++ Operators and operator precedence +++ Between expressions +++ In expressions +++ Like Expressions +++ Null Comparison Expressions +++ Empty Collection Comparison Expressions +++ Collection Member Expressions +++ Exists Expressions +++ All and Any Expressions +++ Subqueries ++ Functional Expressions +++ String functions +++ Arithmetic functions +++ Datetime functions +++ Collection functions ++ Subqueries +++ Introduction +++ Comparisons using subqueries +++ Conditional expressions ++++ ANY, IN and SOME ++++ ALL ++++ EXISTS and NOT EXISTS +++ Correlated subqueries +++ Subqueries in FROM clause ++ GROUP BY, HAVING clauses ++ ORDER BY clause +++ Introduction +++ Sorting by an aggregate value +++ Using random order ++ LIMIT and OFFSET clauses +++ Introduction +++ Driver portability +++ The limit-subquery-algorithm ++ Examples ++ BNF + Native SQL ++ Scalar queries ++ Component queries ++ Fetching multiple components + Transactions ++ Introduction ++ Unit of work ++ Nesting ++ Savepoints ++ Locking strategies +++ Pessimistic locking +++ Optimistic locking ++ Lock modes ++ Isolation levels ++ Deadlocks + Caching ++ Introduction ++ Availible options ++ Drivers +++ Memcache +++ APC +++ Sqlite + Database abstraction ++ Modules +++ Export ++++ Introduction ++++ Creating new table ++++ Altering table +++ Import ++++ Introduction ++++ Getting table info ++++ Getting foreign key info ++++ Getting view info +++ Util ++++ Using explain +++ DataDict ++++ Getting portable type ++++ Getting database declaration ++++ Reserved keywords ++ Drivers +++ Oracle ++++ Making unsuported functions work +++ Mysql ++++ Tips and tricks + Technology ++ Architecture ++ Design patterns used ++ Speed ++ Internal optimizations +++ DELETE +++ INSERT +++ UPDATE + Real world examples ++ User management system ++ Forum application ++ Album lister + Coding standards ++ Overview +++ Scope +++ Goals ++ PHP File Formatting +++ General +++ Indentation +++ Maximum line length +++ Line termination ++ Naming Conventions +++ Classes +++ Interfaces +++ Filenames +++ Functions and methods +++ Variables +++ Constants +++ Record columns ++ Coding Style +++ PHP code demarcation +++ Strings +++ Arrays +++ Classes +++ Functions and methods +++ Control statements +++ Inline documentation ++ Testing +++ Writing tests