Doctrine
Projects
Coding Standard
Collections
Common
Data fixtures
DBAL
Event Manager
Inflector
Instantiator
Lexer
Migrations
MongoDB ODM
ORM
Persistence
PHPCR ODM
RST Parser
Skeleton Mapper
View All
Development
Community
Contributor Workflow
Maintainer Workflow
Contribute to Website
Maintainers
Contributors
Policies
GitHub
Styleguide
Partners
Blog
Edit
Architecture
Drivers
Platforms
Logging
Schema
Types
Caching
Configuration
Getting a Connection
Connecting using a URL
Driver
Wrapper Class
Connection Details
Automatic platform version detection
Custom Platform
Custom Driver Options
Data Retrieval And Manipulation
Data Retrieval
Dynamic Parameters and Prepared Statements
Using Prepared Statements
Binding Types
DoctrineDBALTypes Conversion
List of Parameters Conversion
API
prepare()
executeUpdate()
executeQuery()
fetchAll()
fetchArray()
fetchColumn()
fetchAssoc()
delete()
insert()
update()
quote()
quoteIdentifier()
Events
PostConnect Event
Schema Events
OnSchemaCreateTable Event
OnSchemaCreateTableColumn Event
OnSchemaDropTable Event
OnSchemaAlterTable Event
OnSchemaAlterTableAddColumn Event
OnSchemaAlterTableRemoveColumn Event
OnSchemaAlterTableChangeColumn Event
OnSchemaAlterTableRenameColumn Event
OnSchemaColumnDefinition Event
OnSchemaIndexDefinition Event
Introduction
Known Vendor Issues
PostgreSQL
DateTime, DateTimeTz and Time Types
Timezones and DateTimeTz
MySQL
DateTimeTz
Sqlite
Buffered Queries and Isolation
DateTime
DateTimeTz
Reverse engineering primary key order
IBM DB2
DateTimeTz
Oracle
DateTimeTz
OCI-LOB instances
Microsoft SQL Server
Unique and NULL
DateTime, DateTimeTz and Time Types
PDO_SQLSRV: VARBINARY/BLOB columns
Platforms
MySQL
Oracle
Microsoft SQL Server
PostgreSQL
SAP Sybase SQL Anywhere
SQLite
Drizzle
Portability
Connection Wrapper
Database Platform
Keyword Lists
SQL Query Builder
Security: Safely preventing SQL Injection
Building a Query
WHERE-Clause
Table alias
GROUP BY and HAVING Clause
Join Clauses
Order-By Clause
Limit Clause
VALUES Clause
Set Clause
Building Expressions
Binding Parameters to Placeholders
Schema-Manager
listDatabases()
listSequences()
listTableColumns()
listTableDetails()
listTableForeignKeys()
listTableIndexes()
listTables()
listViews()
createSchema()
Schema-Representation
Schema Assets
Column
Security
SQL Injection: Safe and Unsafe APIs for User Input
User input in your queries
Wrong: String Concatenation
Right: Prepared Statements
Right: Quoting/Escaping values
Sharding
ID Generation
Use GUID/UUIDs
Table Generator
Natural Identifiers
Transactions
Foreign Keys
Complex Queries
ShardManager Interface
Schema Operations: SchemaSynchronizer Interface
SQL Azure Federations
Schema Operations
SQLAzure Filtering
Generic SQL Sharding Support
SQLAzure Sharding Tutorial
Install Doctrine
Setup Connection
Create Database
Create Schema
View Federation Members
Insert Data
Split Federation
Inserting Data after Split
Querying data with filtering off
Querying data with filtering on
Supporting Other Databases
Implementation Steps in Detail
Transactions
Transaction Nesting
Auto-commit mode
Error handling
Types
Reference
Numeric types
String types
Bit types
Date and time types
Array types
Object types
Mapping Matrix
Detection of Database Types
Custom Mapping Types
Upgrading
Deprecations
Projects
DBAL
Documentation
You are browsing a version that is no longer maintained.
Table of Contents
2.7.2
Maintained
4.0.0-RC1 (upcoming)
3.8 (upcoming)
3.7.2 (current)
Unmaintained
3.6
3.5
3.4
3.3
3.2
3.1
3.0
2.13
2.12
2.11
2.10
2.9
2.8
2.7
2.6
2.5
2.4
Welcome to Doctrine DBAL's documentation!
Contents:
Introduction
Architecture
Configuration
Data Retrieval And Manipulation
SQL Query Builder
Transactions
Platforms
Types
Schema-Manager
Schema-Representation
Events
Security
Sharding
SQLAzure Sharding Tutorial
Supporting Other Databases
Portability
Caching
Known Vendor Issues
Upgrading
Indices and tables
Top