1.增加數據(就相當於增加一個實例對象)
user1 = User(name='long',email='[email protected]',password='3456789',role_id=1)
db.session.add(user1)
db.session.commit()
2.修改數據
修改用戶表裏面的name爲long的姓名爲:fang
首先查詢到名爲long的這個用戶
user1 = User.query.filter_by(name='long').first()
賦值/修改
user1.name = 'fang'
提交
db.session.commit()
3.先查詢刪除
user1 = User.query.filter_by(name='fang').first()
db.session.delete(user1)
db.session.commit()
4.查詢
1.查詢所有用戶數據
User.query.all()
2.查詢有多少個用戶
User.query.count()
3.查詢第1個用戶
User.query.first()
4.查詢id爲4的用戶[3種方式]
(1)User.query.get(4)
(2)User.query.filter_by(id=4).first()
(3)User.query.filter(User.id==4).first()
5.查詢名字結尾字符爲g的所有數據[開始/包含]
User.query.filter(User.name.endswith('g')).all() --[User:wang, User:zhang, User:tang]
包含:
User.query.filter(User.name.contains('g')).all() --[<User 1>, <User 2>, <User 5>]
獲取第二個對象的名字:
list = User.query.filter(User.name.contains('g')).all()
list[1].name
6.查詢名字不等於wang的所有數據[2種方式]
(1)!=: User.query.filter(User.name!='wang').all()
(2)not:User.query.filter(not(User.name=='wang')).all()
7.查詢名字和郵箱都以 li 開頭的所有數據[2種方式]
(1)and: User.query.filter(and(User.name.startswith('li'),User.email.startswith('li'))).all()
(2)不需要and_:User.query.filter(User.name.startswith('li'),User.email.startswith('li')).all()
8.查詢password是 123456 或者 email 以 itheima.com 結尾的所有數據
User.query.filter(or_(User.password=='123456',User.email.endswith('itheima.com'))).all()
9.查詢id爲 [1, 3, 5, 7, 9] 的用戶列表
User.query.filter(User.id.in_([1,3,5,7,9])).all()
10.查詢name爲liu的角色數據(重要)
User.query.filter(User.name=='liu').first().role.name
11.查詢所有用戶數據,並以郵箱排序
User.query.order_by('email').all()
12.每頁3個,查詢第2頁的數據
User.query.paginate(2,3,False).items 查詢數據
User.query.paginate(2,3,False).page ---當前頁
User.query.paginate(2,3,False).pages ---總頁數
轉載自:
https://blog.csdn.net/longting_/article/details/80658105