Python SQLAlchemy 教程:安装与基础入门指南

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Python 中 SQL 操作基础:SQLAlchemy 安装与使用

数据库操作是现代软件开发中不可或缺的核心技能。无论你是在开发 Web 应用、编写数据分析脚本,还是构建后端服务,掌握通过 SQL 管理数据的能力都至关重要。

本文将深入讲解如何在 Python 中使用强大的 SQLAlchemy 库操作数据库。你将学会如何安装该库、配置不同数据库的连接,并执行常见的数据操作。

什么是 SQLAlchemy?

SQLAlchemy 是 Python 中最流行且功能最强大的关系型数据库操作库之一。它提供了一种简单而灵活的方式,让你通过 Python 代码与各种数据库管理系统进行交互。

SQLAlchemy 支持以下主流数据库:

  • MySQL
  • PostgreSQL
  • SQLite
  • Oracle
  • Microsoft SQL Server

SQLAlchemy 的核心功能

SQLAlchemy 为开发者提供了丰富的功能特性:

  • 直接支持原生 SQL 查询,提供最大灵活性
  • ORM(对象关系映射)功能,让你通过 Python 类操作数据库
  • 统一的 API 接口,兼容多种数据库系统
  • 高性能与优雅的代码编写体验
  • 自动化的数据库连接管理
  • 内置 SQL 注入防护机制
  • 支持事务处理与连接池

在 Python 中安装 SQLAlchemy

基础安装

安装 SQLAlchemy 非常简单,只需通过 pip 包管理器即可完成:

pip install SQLAlchemy

在 Jupyter Notebook 中安装

如果你在 Jupyter Notebook 环境中工作,请使用以下命令:

!pip install SQLAlchemy

安装数据库驱动

针对不同的数据库,你可能需要安装额外的驱动程序:

pip install pymysql      # 用于 MySQL
pip install psycopg2     # 用于 PostgreSQL  
pip install cx_Oracle    # 用于 Oracle
pip install pyodbc       # 用于 SQL Server

验证安装是否成功

安装完成后,可以通过以下代码检查 SQLAlchemy 版本:

import sqlalchemy
print(sqlalchemy.__version__)

SQLAlchemy 快速上手

导入必要模块

开始使用 SQLAlchemy 前,需要先导入核心模块:

from sqlalchemy import create_engine, Column, Integer, String, DateTime
from sqlalchemy.orm import declarative_base, sessionmaker
from datetime import datetime

配置数据库连接

为了演示功能,我们将使用 Python 内置的轻量级数据库 SQLite:

engine = create_engine('sqlite:///example.db', echo=True)

参数 echo=True 可以让你看到 SQLAlchemy 执行的所有 SQL 语句,这对于调试和理解 ORM 工作原理非常方便。

使用 ORM 创建数据模型

创建数据模型是使用 SQLAlchemy ORM 的基础:

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    
    id = Column(Integer, primary_key=True)
    name = Column(String, nullable=False)
    age = Column(Integer)
    created_at = Column(DateTime, default=datetime.utcnow)
    
    def __repr__(self):
        return f"<User(name='{self.name}', age={self.age})>"

创建

博客

书籍推荐