先前在這篇文章有些建立操作介紹->mysql安裝和操作(flask)
以下為讀《深入理解flask》
對各種資料儲存策略有四種基本功能型別:新增,讀取,修改,刪除讀取資料也許是操作種模擬較複雜的功能型別乙個簡單的例子一些常用語句(可以鏈式呼叫)>>> users=user.query.all()
>>> users
user.query.all ##查詢user模型在資料庫中所有行
user.query.h2mit(5).all ##指定行數返回
user.query.first() ##返回一行資料
user.query.filter(user.id == 2).first().name
user.query.get(2).name ##以主鍵獲取,等效於上句
post.query.paginate(2,10) ##返回2-10的物件,這個設計為了分頁
user.query.filter_by(username="test").all() ##精確過濾
user.query.filter(user.id>1).all() ##user.id大於1的
##filter引數接受任何python表示式
user.query.order_by(user.username).all() ##正向排序
user.query.order_by(user.username.desc()).all() ##反向排序
##order_by控制排序方式
paginate-add:假如命令page=post.query.paginate(2,10)
filter-add: 一些複雜的sql語句也可以轉化page.items ##返回這一頁包含資料
page.page ##頁數
page.pages ##總頁數
user.query.filter(
user.username.in_(['test','test1']),
user.password_hash==none
).first()
user.query.filter(
not_(user.password_hash==none)
).first() ##擁有密碼的user
user.query.filter(
or_(not_(user.password_hash==none),user.id>1)
).first() ##組合呼叫
sqlalchemy中與none的比較會被當成與null比較呼叫update方法更新資料>>> user.query.filter_by(username="test").update()
1>>> db.session.commit()
>>> user=user.query.filter_by(username="test").first()
>>> db.session.delete(user)
>>> db.session.commit()
flask使用SQLAlchemy組對資料庫操作
兩種連線方式 第二種方式就是利用threading.local 為每個執行緒開闢乙個自己獨立的儲存空間 from sqlalchemy.orm import sessionmaker from sqlalchemy import create engine from sqlalchemy.orm i...
sqlalchemy基本操作
sqlalchemy的簡單實用 其他比較好的人寫的 各種基本操作 sqlalchemy指南 常用技巧 usr bin env python coding utf 8 from sqlalchemy import column,string,create engine,metadata from sq...
SQLAlchemy 讀取資料的方法
把資料新增進資料庫後,sqlalchemy 可以通過model.query 方法對資料進行查詢。model.query 是 db.session.query modle 的簡寫。1.使用all 函式獲取資料庫中的所有行,並作為列表返回。users user.query.all users 2.使用l...