ORM的增删改查
引入:所有的和数据库有关的ORM操作都是通过session
会话对象实现的,通过以下代码获取会话对象(session
):
from sqlalchemy.orm import sessionmaker
#engine传进去
Session = sessionmaker(engine)
session = Session()
#或者另一种写法:
session = sessionmaker(engine)()
接下来就可以通过这个会话对象来操作数据库了
-
增:
-
创建一个对象,即创建一条数据。
user = User(username='xiaodong',password='6058')
将这个对象添加到会话对象中:
session.add(user)
- 将之前的所有操作,做事务提交:
session.commit()
-
-
查:
-
通过
session.query
对象进行查找:# 查找table所有数据 session.query(User).all() # 查找User这张表中的第一条数据 session.query(User).first() # 通过username=xiaodong来进行过滤查找 session.query(User).filter_by(username='xiaodong') # 通过get方法,用主键查找对象 session.query(User).get(primary_key)
-
-
改:
-
从数据库查找数据:
session.query(User).filter_by(username='xiaodong').first()
-
修改成需要的数据:
user.username = 'xiaodong'
-
做事务的提交操作:
session.commit()
-
- 删:
-
从数据库中获取数据:
user = session.query(User).first()
-
使用
session.delete
方法进行删除:session.delete(user)
-
做事务的提交操作:
session.commit()
-