SQLAlchemy Documentation¶
Getting Started
A high level view and getting set up.
Overview | Installation Guide | Frequently Asked Questions | Migration from 1.3 | Glossary | Error Messages | Changelog catalog
Tutorials
SQLAlchemy 1.4 / 2.0 Transitional
SQLAlchemy 2.0 is functionally available as part of SQLAlchemy 1.4, and integrates Core and ORM working styles more closely than ever. The new tutorial introduces both concepts in parallel. New users and those starting new projects should start here!
SQLAlchemy 1.4 / 2.0 Tutorial - SQLAlchemy 2.0’s main tutorial
Migrating to SQLAlchemy 2.0 - Complete background on migrating from 1.3 or 1.4 to 2.0
SQLAlchemy 1.x Releases
The 1.x Object Relational Tutorial and Core Tutorial are the legacy tutorials that should be consulted for existing SQLAlchemy codebases.
Reference Documentation
SQLAlchemy ORM
ORM Configuration: Mapper Configuration | Relationship Configuration
ORM Usage: Session Usage and Guidelines | Querying Data, Loading Objects | AsyncIO Support
Configuration Extensions: Mypy integration | Association Proxy | Hybrid Attributes | Automap | Mutable Scalars | All extensions
Extending the ORM: ORM Events and Internals
Other: Introduction to Examples
SQLAlchemy Core
Engines, Connections, Pools: Engine Configuration | Connections, Transactions | AsyncIO Support | Connection Pooling
Schema Definition: Overview | Tables and Columns | Database Introspection (Reflection) | Insert/Update Defaults | Constraints and Indexes | Using Data Definition Language (DDL)
SQL Reference: SQL Expression API docs
Datatypes: Overview | Building Custom Types | API
Core Basics: Overview | Runtime Inspection API | Event System | Core Event Interfaces | Creating Custom SQL Constructs
Dialect Documentation
The dialect is the system SQLAlchemy uses to communicate with various types of DBAPIs and databases. This section describes notes, options, and usage patterns regarding individual dialects.
PostgreSQL | MySQL | SQLite | Oracle | Microsoft SQL Server