Python SQLAlchemy 完整指南

更多学习内容:ipengtao.com

对于 SQL 数据库操作,SQLAlchemy 是 Python 中功能强大且广泛使用的库。它提供了多种方式来与数据库交互,包括创建表、查询、插入、更新和删除数据。以下是一个详细的 SQLALchemy 教程,包括基础的连接数据库,创建表,以及查询、插入、更新和删除数据的示例代码。

引言

SQLAlchemy 是一个强大的 Python 库,用于数据库操作。无论是简单的数据存储还是复杂的数据管理,SQLAlchemy 都提供了多种方法来处理数据库。本文将全面介绍 SQLAlchemy 的基本用法以及各种操作的示例代码。

安装 SQLAlchemy

在使用 SQLAlchemy 之前,需要先安装它。

通过以下命令进行安装:

bash 复制代码
pip install sqlalchemy

连接数据库

首先,连接到数据库。

python 复制代码
from sqlalchemy import create_engine

# 创建数据库引擎
engine = create_engine('sqlite:///my_database.db', echo=True)

# 在内存中创建数据库
# engine = create_engine('sqlite:///:memory:', echo=True)

这段代码创建了一个数据库引擎,连接到 SQLite 数据库,echo=True 参数用于在终端输出 SQL 查询语句。

定义表结构

接下来,创建一个数据表。

python 复制代码
from sqlalchemy import Table, Column, Integer, String, MetaData

metadata = MetaData()

# 创建一个数据表
users = Table('users', metadata,
    Column('id', Integer, primary_key=True),
    Column('name', String),
    Column('age', Integer)
)

metadata.create_all(engine)

这段代码使用 SQLAlchemy 定义了一个名为 users 的数据表,包含 idnameage 三个字段。

插入数据

python 复制代码
# 插入数据
conn = engine.connect()

insert_query = users.insert().values(name='Alice', age=25)
conn.execute(insert_query)

insert_data = [
    {'name': 'Bob', 'age': 30},
    {'name': 'Charlie', 'age': 22}
]

conn.execute(users.insert(), insert_data)

这个示例演示了如何向表中插入数据。

查询数据

python 复制代码
from sqlalchemy.sql import select

# 查询数据
select_query = select([users])
result = conn.execute(select_query)

for row in result:
    print(row)

这段代码查询并打印出 users 表中的所有数据。

更新数据

python 复制代码
# 更新数据
update_query = users.update().where(users.c.id == 1).values(name='Alex')
conn.execute(update_query)

这个示例演示了如何更新表中的数据。

删除数据

python 复制代码
# 删除数据
delete_query = users.delete().where(users.c.id == 2)
conn.execute(delete_query)

这段代码演示了如何删除表中的数据。

总结

SQLAlchemy是一个功能强大的Python库,可用于简化数据库操作。本教程提供了SQLAlchemy基本用法示例,包括连接数据库、创建表、以及查询、插入、更新和删除数据。首先,使用create_engine()函数连接到数据库,然后使用MetaData()定义表结构。通过insert()插入数据,select()查询数据,update()更新数据,delete()删除数据。

这些示例展示了SQLAlchemy简单而强大的功能,使用户能够轻松管理数据库。通过SQLAlchemy,用户可以更高效地进行数据库操作,从而在数据存储和管理方面获得更好的灵活性和控制力。 SQLALchemy的强大功能和灵活性使其成为Python中处理数据库的首选工具之一,适用于多种应用场景,从小型应用到大型企业级系统。


Python学习路线

更多学习内容:ipengtao.com

相关推荐
红尘散仙1 小时前
我把终端小说阅读器接上了 AI Agent:TRNovel 现在能用 skill 生成书源了
人工智能·后端·rust
心中有国也有家1 小时前
GE图引擎深度解析——CANN的计算图优化与执行引擎
人工智能·pytorch·python·学习·numpy
卷毛的技术笔记3 小时前
告别硬编码!Spring AI Alibaba 实现 AI Agent 智能工具调用(Tool Calling)
java·人工智能·后端·python·spring·ai编程
编程大师哥3 小时前
匿名函数 lambda + 高阶函数
java·python·算法
vb2008113 小时前
FastAPI APIRouter
开发语言·python
会编程的土豆3 小时前
Go 语言反射(Reflection)详解
开发语言·后端·golang
adrninistrat0r3 小时前
Java调用链MCP分析工具
java·python·ai编程
喵个咪3 小时前
GoWind Toolkit Go后端代码生成 完整全流程实战
后端·go·orm
杨充3 小时前
1.3 浮点型数据设计灵魂
开发语言·python·算法
basketball6164 小时前
Go 语言从入门到进阶:4. 数组和MAP使用方法总结
开发语言·后端·golang