Flask的模型和資料庫的增刪改查

2021-09-10 04:52:20 字數 2209 閱讀 5924

安裝flask-sqlalchemy

pip install sqlalchemy

db = sqlalchemy()

增加學生資訊

db.session.add(stu)

sb.session.commit()

批量增加學生資訊

db.session.add_all(stus)

db.session.commit()

db.session.delete(stu)

db.session.commit()

db.session.add(stu) : 更新內容可以不寫

db.session.commit()

三種查詢主鍵的方式:

student.query.filter(student.id == 1).first()

stu = student.query.filter_by(id=1).first()

stu = student.query.get(1)

查詢第乙個物件:

stu1 = student.query.all()[0]

stu2 = student.query.first()

order_by('-id') :表示安裝id的降序排資料

order_by('id') :表示安裝id的公升序排資料

方法1(切片):

stus = student.query.all()[:4]

方法2:

offset(m).limit(n):表示跳過m個引數,擷取n個引數

gt ge lt le : 大於 大於等於 小於 小於等於

stus = student.query.filter(student.s_age.__gt__(30)).all()

第二種(直接使用》 < >= <= ):

stus = student.query.filter(student.s_age > 30).all()

包含查詢:

stus = student.query.filter(student.s_name.contains('d')).all()

以什麼開頭:

stus = student.query.filter(student.s_name.startswith('p')).all()

以什麼結尾:

stus = student.query.filter(student.s_name.endswith('e')).all()

模糊查詢('_' 匹配一位,'%' 匹配任意長度的資料):

stus = student.query.filter(student.s_name.like('__a%')).all()

且:

1.鏈式結構查詢:

stus = student.query.filter(student.s_name.contains('e')).filter(student.s_age > 35).all()

2._and方法或者,號隔開

stus = student.query.filter(and_(student.s_name.contains('e'), student.s_age > 35)).all()

stus = student.query.filter(student.s_name.contains('e'), student.s_age > 35).all()

或: or_方法:

stus = student.query.filter(or_(student.s_name.contains('e'), student.s_age > 35)).all()

非: not_方法:

stus = student.query.filter( not_(student.s_name.contains('e') )).all()

第一種方法(切片):

第二種方法(limit offset):

第三種方法(paginate):

page:當前頁碼 pages:總頁數

迴圈取頁碼 iter_pages()

flask資料庫模型

web程式中使用資料庫儲存資料,在檢視函式中運算元據庫。如果在檢視函式中編寫sql語句,則 顯得太混亂,所以開發者 將資料庫中的table對映成python類,將column對映成類的屬性,row對映成類的例項,所以就可以通過操作python類物件實現對資料庫的操作。table在對映為類,所以建表就...

flask連線資料庫的增刪改查

flask日常步驟省略 增1 建立資料庫物件34 建立資料庫類,用來對映資料庫表,將資料庫的模型作為引數傳入 5class user db.model 6 宣告表名 7 tablename user 8 建立字段函式 9 id db.column db.integer,primary key tru...

flask中資料庫的基本操作 增刪改查

1.增加資料 就相當於增加乙個例項物件 user1 user name long email wertyui qq.com password 3456789 role id 1 db.session.add user1 db.session.commit 2.修改資料 修改使用者表裡面的name為l...