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即可。

相关内容

热门资讯

造假泛滥、虫入车间、产能拉胯:... 订阅 快刀财经 ▲ 做您的私人商学院世界药房的致命短板。作者:朱末来源:快刀财经(ID:kuai...
影石创新股价“脚踝斩”,刘靖康... 出品|达摩财经近日,第三方数据公司IDC发布了2026年一季度全球手持智能相机行业报告。报告数据显示...
美股半导体股,集体上涨 美股半... 6月29日,美股三大指数集体高开,道指涨0.29%,纳指涨0.96%,标普500指数涨0.55%。 ...
三只*ST股,将摘星脱帽 st... 6月29日晚间,A股三家*ST公司公告称将“摘星脱帽”。 具体来看,*ST艾艾发布关于撤销退市风险警...
【就业创业典型】大棚逐梦人:一... 编者按:近年来,延安市残疾人工作坚持以习近平新时代中国特色社会主义思想为指导,以促进残疾人事业全面高...
公募基金锚定新质生产力,多维赋... 6月22日消息,中国证监会主席吴清近日在2026陆家嘴论坛上表示,资本市场与新质生产力双向奔赴、相互...
液冷服务器概念震荡走强,冰轮环... 6月22日消息,午后液冷服务器概念震荡走强,冰轮环境9天5板,此前康盛股份涨停,大元泵业、川润股份、...
涉留神峪煤矿事故,国家矿山安全... 6月22日消息,国家矿山安全监察局山西局监察执法八处三级调研员耿青禄涉嫌严重违法,涉通洲集团留神峪煤...
周立成拟任中国投资协会秘书长 6月22日消息,中国投资协会发布关于中国投资协会第五届理事会届中调整负责人人选的公示:周立成,男,汉...
以防长称以军已做好对伊采取独立... 据央视新闻,以色列国防部长卡茨日前在与军事记者的闭门谈话中,阐述了以色列在黎巴嫩、伊朗及加沙地带等多...