
- Peewee 教程
- Peewee - 主頁
- Peewee - 概覽
- Peewee - 資料庫類
- Peewee - 模型
- Peewee - 欄位類
- Peewee - 插入新記錄
- Peewee - 選擇記錄
- Peewee - 過濾器
- Peewee - 主鍵和複合鍵
- Peewee - 更新現有記錄
- Peewee - 刪除記錄
- Peewee - 建立索引
- Peewee - 約束
- Peewee - 使用 MySQL
- Peewee - 使用 PostgreSQL
- Peewee - 動態定義資料庫
- Peewee - 連線管理
- Peewee - 關係和聯接
- Peewee - 子查詢
- Peewee - 排序
- Peewee - 計數和聚合
- Peewee - SQL 函式
- Peewee - 檢索行元組/字典
- Peewee - 使用者定義運算子
- Peewee - 原子事務
- Peewee - 資料庫錯誤
- Peewee - 查詢生成器
- Peewee - 與 Web 框架整合
- Peewee - SQLite 擴充套件
- Peewee - PostgreSQL 和 MySQL 擴充套件
- Peewee - 使用 CockroachDB
- Peewee 有用資源
- Peewee - 快速指南
- Peewee - 有用資源
- Peewee - 討論
Peewee - 更新現有記錄
可以透過呼叫模型例項上的 **save()** 方法以及 **update()** 類方法來修改現有資料。
以下示例在 **get()** 方法的幫助下從 User 表中獲取一行,並透過更改年齡欄位的值對其進行更新。
row=User.get(User.name=="Amar") print ("name: {} age: {}".format(row.name, row.age)) row.age=25 row.save()
Method 類的 **update()** 方法生成 UPDATE 查詢。然後呼叫查詢物件的 execute() 方法。
以下示例使用 update() 方法更改年齡大於 20 的行的年齡列。
qry=User.update({User.age:25}).where(User.age>20) print (qry.sql()) qry.execute()
由 update() 方法呈現的 SQL 查詢如下 −
('UPDATE "User" SET "age" = ? WHERE ("User"."age" > ?)', [25, 20])
Peewee 還有一個 **bulk_update()** 方法,用於幫助在單個查詢操作中更新多個模型例項。該方法需要更新的模型物件和要更新的欄位列表。
以下示例透過新值更新指定行的年齡欄位。
rows=User.select() rows[0].age=25 rows[2].age=23 User.bulk_update([rows[0], rows[2]], fields=[User.age])
廣告