flask資料庫操作命令

2021-08-22 15:04:47 字數 1783 閱讀 4096

資料庫增加,刪除,修改操作:

增加:

user = user(name=』laowang』)

db.session.add(user)

db.session.commit()

修改:

user.name = 『xiaohua』

db.session.commit()

刪除:

db.session.delete(user)

db.session.commit()

查詢所有使用者資料

user.query.all()

查詢有多少個使用者

user.query.count()

查詢第1個使用者

user.query.all()[0]

查詢id為4的使用者[3種方式]

user.query.get(4)

user.query.filter_by(id = 4).first()

user.query.filter(user.id == 4).first()

查詢名字結尾字元為g的所有資料[開始/包含]

user.query.filter(user.name.endwith(『g』)).all()

user.query.filter(user.name.startswith(『g』)).all()

user.query.filter(user.name.contains(『g』)).all()

查詢名字不等於wang的所有資料[2種方式]

查詢名字和郵箱都以 li 開頭的所有資料[2種方式]

user.query.filter(user.name.startswith(『li』),user.email.startswith(『li』)).all()

user.query.filter(and_(user.name.startswith(『li』),user.email.startswith(『li』))).all()

查詢password是123456或者email.com結尾的所有資料

user.query.filter(or_(user.password == 『123456』,user.email.endswith(『.com』))).all()

查詢id為 [1, 3, 5, 7, 9] 的使用者列表

user.query.filter(user.id.in_([1,3,5,7,9])).all()

查詢name為liu的角色資料

user = user.query.filter(user.name == 『liu』).first()

role = role.query.filter(role.id == user.role_id).first()

查詢所有使用者資料,並以郵箱排序

user.query.order_by(user.email).all()

user.query.order_by(user.email.desc()).all()

每頁3個,查詢第2頁的資料

paginate = user.query.paginate(page, per_page,error_out)

paginate = user.query.paginate(2,3,false)

page: 哪乙個頁

per_page: 每頁多少條資料

error_out: false 查不到不報錯

pages: 共有多少頁

items: 當前頁數的所有物件

Flask資料庫操作

flask 資料庫主要是學習flask sqlalchemy安裝及連線 使用資料庫 資料庫的遷移,可以定乙個大概的學習目標,我之前是這麼定的 能夠理解 orm 工作原理以及其優缺點 能夠寫出在 flask 中連線 mysql 的配置項格式 ip,埠,資料庫 能夠使用 sqlalchemy 定義出關係...

flask資料庫操作

通過命令生成資料庫 必須先刪除在生成,不易維護 flask自帶遷移資料庫的框架 from flask script import manager 擴充套件db指令 flask script命令擴充套件包 需要安裝 from flask migrate import migrate,migrateco...

Flask的資料庫操作

flask model中表的格式 from import db class vulreport db.model tablename vul reports id db.column db.integer,primary key true author db.column db.string 64 ...