sqlalchemy的增删,插入更新

本文介绍了如何使用SQLAlchemy在Python中连接MySQL数据库,包括创建连接、执行SQL查询、插入、更新和删除数据,以及基于ORM的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.连接数据库

from sqlalchemy import create_engine
 
# 连接数据库
engine = create_engine('mysql+pymysql://username:password@localhost/dbname')
 
# 进行一些数据库操作
# ...
 
# 关闭连接
engine.dispose()

  • mysql:数据库类型;
  • pymysql:MySQL数据库驱动;
  • username:数据库用户名;
  • password:数据库密码;
  • localhost:数据库主机名;
  • dbname:数据库名。
  • 2.查询数据

    SQLAlchemy提供了两种查询数据的方式:基于SQL语句的查询和基于ORM的查询。

  • 基于SQL语句的查询

from sqlalchemy import create_engine
 
# 连接数据库
engine = create_engine('mysql+pymysql://username:password@localhost/dbname')
 
# 执行查询语句
result = engine.execute("SELECT * FROM employees")
 
# 处理查询结果
for row in result:
    print(row)
 
# 关闭连接
engine.dispose()

-------------------------------------------------------------------------------------------------------------------

from sqlalchemy import create_engine
 
# 连接数据库
engine = create_engine('mysql+pymysql://username:password@localhost/dbname')
 
# 构造插入语句
sql = "INSERT INTO employees(name, age, salary) VALUES (%s, %s, %s)"
params = ("Tom", 25, 5000)
 
# 执行插入语句
engine.execute(sql, params)
 
# 关闭连接
engine.dispose()

更新数据

更新数据可以通过如下步骤完成:

  1. 创建 对象,并查询要更新的记录

from sqlalchemy.orm import Session
from myapp.models import User   # 假设这里有一个 User 模型
 
session = Session()
 
# 查询要更新的记录
user = session.query(User).filter_by(id=1).first()

     2.修改要更新的属性

# 修改属性
user.name = "new_name"
user.age = 30

    3.提交更改

# 提交更改
session.commit()

完整代码如下

from sqlalchemy.orm import Session
from myapp.models import User   # 假设这里有一个 User 模型
 
session = Session()
 
# 查询要更新的记录
user = session.query(User).filter_by(id=1).first()
 
# 修改属性
user.name = "new_name"
user.age = 30
 
# 提交更改
session.commit()

删除数据

删除数据也可以通过如下步骤完成:

  1. 创建 session 对象,并查询要删除的记录

from sqlalchemy.orm import Session
from myapp.models import User   # 假设这里有一个 User 模型
 
session = Session()
 
# 查询要删除的记录
user = session.query(User).filter_by(id=1).first()

     2.调用 session.delete 方法删除记录

# 删除记录
session.delete(user)

     3.提交更改

# 提交更改
session.commit()

完整代码如下

from sqlalchemy.orm import Session
from myapp.models import User   # 假设这里有一个 User 模型
 
session = Session()
 
# 查询要删除的记录
user = session.query(User).filter_by(id=1).first()
 
# 删除记录
session.delete(user)
 
# 提交更改
session.commit()

作者转载,仅供参考,原文如下

简单易用,灵活强大:用SQLAlchemy实现Python操作数据库_sqlalchemy 执行sql-优快云博客

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值