使用ORM新增数据在Mysql中的操作步骤
短信预约 -IT技能 免费直播动态提醒
【前言】
想要使用ORM在数据库中进行操作数据,前提是已经新建了ORM模型 ;就是我们之前已经搭建的模型https://www.jb51.net/article/218036.htm
【ORM操作步骤】
- 构造ORM模型对象
- 添加到session
- 提交到数据库
- 出现异常,回滚事务(可选)
【构造ORM模型对象】
user_obj = User(
username="use1",
password="123456",
real_name = "用户1",
age=12
)
【添加到session】
# 添加1个对象
session.add(user_obj)
# 添加多个对象
session.add_all([user1,user2,user3])
【session的作用】
- 建立与数据库之间的会话
- 使用session对数据库中的数据进行增删改查
- 使用session进行事务控制(提交和回滚)
- 使用完后需要关闭它 session.close()
【session的创建】
有两种方法,下图代码示例
# 方法一 实例化session
from sqlalchemy.orm import Session
with Session(engine) as session:
session.add(User())
session.commit()
# 方法二 使用工厂函数创建
from sqlalchemy.orm import sessionmaker
Session = sessionmaker(engine)
with Session.begin() as session:
session.add(User())
【数据提交到数据库】
with Session(engine) as session:
session.add(user_obj)
session.add_all([user1,user1,user1])
session.commit()
【出现异常,回滚事务】
with Session(engine) as session:
session.begin()
try:
session.add(user1)
session.add(user2)
except:
session.rollback()
raise
else:
session.commit()
【Session对象中其他的常用方法】
1. excute(statement, params=None,*args) 执行SQL查询
2. delete(instance) 物理删除数据
3. get(entity,idnet,*args) 根据主键返回满足条件的ORM对象/None
4. query(*entities,**kwargs)
使用ORM查询,返回Query对象
到此这篇关于使用ORM新增数据在Mysql中的文章就介绍到这了,更多相关ORM mysql数据库内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341