Python全系列 教程
3567个小节阅读:5929.2k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
所有和数据库的ORM操作都必须通过一个叫做
session
的会话对象来实现,通过以下代码来获取会话对象
xxxxxxxxxx
from sqlalchemy.orm import sessionmaker
engine = create_engine(DB_URI)
Base = declarative_base(engine)
session = sessionmaker(engine)()
xxxxxxxxxx
def create_data_one():
with Session() as session:
p1 = Person(name = '百战',age = 6 , country='北京')
session.add(p1)
session.commit()
def create_data_many():
with Session() as session:
p2 = Person(name = '吕布',age = 19 , country='北京')
p3 = Person(name = '貂蝉',age = 18 , country='北京')
session.add_all([p2,p3])
session.commit()
xxxxxxxxxx
def query_data_all():
with Session() as session:
all_person = session.query(Person).all()
for p in all_person:
print(p.name)
def query_data_one():
with Session() as session:
p1 = session.query(Person).first()
print(p1.name)
def query_data_by_params():
with Session() as session:
# p1 = session.query(Person).filter_by(name='吕布').first()
p1 = session.query(Person).filter(Person.name == '吕布').first()
print(p1.age)
xxxxxxxxxx
def update_data():
with Session() as session:
p1 = session.query(Person).filter(Person.name == '吕布').first()
p1.age = 20
# 提交事务
session.commit()
将需要删除的数据从数据库中查找出来,然后使用session.delete
方法将这条数据从session中删除,最后做commit操作就可以了
xxxxxxxxxx
def delete_data():
with Session() as session:
p1 = session.query(Person).filter(Person.name == '貂蝉').first()
session.delete(p1)
session.commit()
实时学习反馈
1. 对SQLAlchemy说法错误的是?
A SQLAlchemy操作数据时,需要使用session对象
B SQLAlchemy对数据的所有操作都无需提交事务,会自动处理
C SQLAlchemy对数据的增\删\改数据时,需要提交事务
D 可以通过session对象增加一个或多个数据
答案
1=>B