TinyDB - 文件 ID



TinyDB 使用文件 ID(用doc_id表示)來訪問和修改資料庫中文件的值。在這裡,我們將瞭解如何將此文件 ID 用於各種操作。

使用文件 ID 顯示資料

我們可以在get()方法中使用doc_id來顯示資料庫中的資料。其語法如下:

db.get(doc_id = value)

檢查資料庫中的文件

我們可以在contains()方法中使用doc_id來檢查資料庫中是否存在文件。其語法如下:

db.contains(doc_id = value)

更新所有文件

我們可以在update()方法中使用doc_id來更新資料庫中具有給定文件 ID 的所有文件。其語法如下:

db.update({key : value}, doc_ids = […])

刪除文件

我們可以在remove()方法中使用doc_id來刪除資料庫中具有給定文件 ID 的特定文件或所有文件。其語法如下:

db.remove(doc_ids = […])

讓我們來看一些例子,演示如何在 TinyDB 中使用這些方法和doc_id。我們將使用我們在前面所有章節中使用過的相同的student資料庫。

示例 1

讓我們看看如何使用doc_id從資料庫中獲取特定文件的資料:

from tinydb import TinyDB
db = TinyDB('student.json')
db.get(doc_id = 5)

它將獲取doc_id為“5”的文件中的資料。

{
   'roll_number': 5,
   'st_name': 'karan',
   'mark': 275,
   'subject': 'oracle',
   'address': 'benglore'
}

示例 2

讓我們看看如何使用doc_id檢查資料庫是否包含具有特定 ID 的文件:

from tinydb import TinyDB
db = TinyDB('student.json')
db.contains(doc_id = 15)

根據文件是否存在,它將返回 True 或 False。在本例中,我們的資料庫沒有 doc_id 為“15”的文件。因此,它返回 False。

False

示例 3

讓我們看看如何使用doc_id更新資料庫的文件:

from tinydb import TinyDB
db = TinyDB('student.json')
db.update({'mark':'280'}, doc_ids = [4])

在這裡,我們更新了 doc_id 為“4”的文件的“marks”欄位。要檢查更新後的資料,請使用以下查詢:

print(db.get(doc_id=4))

它將顯示 doc_id 為“4”的文件的更新資料:

{
   'roll_number': 4,
   'st_name': 'lakan',
   'mark': '280',
   'subject': 'MySQL',
   'address': 'mumbai'
}

示例 4

讓我們看看如何使用doc_id從資料庫中刪除特定文件:

from tinydb import TinyDB
db = TinyDB('student.json')
db.remove(doc_ids = [3,4])

在這裡,我們刪除了 doc_id 為“3”和“4”的兩個文件。要驗證,請使用以下get()查詢:

db.get(doc_id=3)
db.get(doc_id=4)

它將顯示以下輸出:

None
None

這意味著我們已成功刪除了 doc_id 為“3”和“4”的文件。

廣告