sqlalchemy_No4_利用原生SQL与数据库交互_Session对象实现
admin
2024-03-30 08:51:55
0

文章目录

  • 操作步骤
    • 第一步:获得会话对象
    • 第二步:利用text函数创建原生sql
    • 第三步:利用Session对象执行原生sql
    • 第四步:关闭Session对象
    • 步骤整合
  • 数据库操作示例

操作步骤

第一步:获得会话对象

在sqlalchemy中除了利用Connection对象进行原生sql操作外,还可以通过Session对象进行原生sql操作。

from sqlalchemy import create_engine
from sqlalchemy.orm import Session
# 创建数据库引擎
dburl = 'mysql+pymysql://root:123456@127.0.0.1:3306/testdb'
engine = create_engine(url=dburl)
# 创建会话对象
session = Session(engine)

第二步:利用text函数创建原生sql

利用sqlalchemy中的text函数将sql字符串加工为原生sql。

from sqlalchemy import text
sql_text = text("SELECT name, age FROM student")

第三步:利用Session对象执行原生sql

利用Session实例对象的execute函数可以与数据库进行事务交互。

students = session.execute(sql_text)

第四步:关闭Session对象

由于Session对象也是一种资源,所以在事务处理完后要及时关闭资源。

session.close()

步骤整合

可以利用Python的上下文管理器的方式使用会话对象,用完后会话对象自动关闭。

with Session(engine) as session:students = session.execute(sql_text)for name, age in students:print(name,age)

数据库操作示例

参见Connection对象进行原生sql操作,而将connection改为session即可。

相关内容

热门资讯

值得买:今年计划消费内容和营销... 5月1日消息,值得买发布投资者关系活动记录表,公司今年的出海计划是消费内容和营销服务同步出海,计划年...
美前财长说关税政策不改经济下行 5月1日消息,美国前财政部长萨默斯当地时间4月30日表示,美国一季度经济数据表现不佳与新一届美国政府...
美元指数4月份累跌超4.5%,... 5月1日消息,4月份,ICE美元指数累计下跌4.54%,周三(4月30日)纽约尾盘报99.474点,...
蔚来人事调整:天津和大连公司总... 5月1日消息,蔚来近日宣布人事调整,原蔚来天津区域公司总经理顾月、原蔚来大连区域公司总经理宫得权因个...
荣耀MagicBook Pro... 5月1日消息,荣耀MagicBookPro 16 2025正式发布, 其中HUNTER版本首发搭载N...
刚刚!千亿工业机器人龙头被曝牵... 关于A股工业机器人龙头汇川技术(300124.SZ)赴港上市的进展,市场再度传出新动向。3月30日,...
“杭州六小龙”第一股,要来了 ... 2026.03.30本文字数:982,阅读时长大约1.5分钟3月29日,空间智能独角兽公司Manyc...
【午盘】沪指午盘涨0.23%,... A股三大股指3月30日集体低开。早盘两市探底后回升,一度跌超1%的沪指成功收涨,跌超2%的创指收跌0...
美国3月成屋签约销售指数环比增... 4月30日消息,美国3月成屋签约销售指数环比增长6.1%,预期1%,前值由2.00%修正为2.1%。
2025五一档新片票房破亿 4月30日消息,据灯塔专业版,截至4月30日22时05分,2025年五一档新片(含重映)总票房(含点...