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”的文档。

广告