Tinydb 简明教程
TinyDB - Document ID
TinyDB 使用文档 ID(由 doc_id 表示)来访问和修改数据库中文档的值。下面我们将看到如何将此 document_id 用于各种操作。
TinyDB uses document ID, represented by doc_id, to access as well as modify the value of documents in a database. Here we will see how we can use this document_id for various operations.
Display Data using Document ID
我们可以在 get() 方法中使用 doc_id 来显示数据库中的数据。其 syntax 如下 −
We can use doc_id in get() method to display the data from a database. Its syntax is as follows −
db.get(doc_id = value)
Check for a Document in a Database
我们可以在 contains() 方法中使用 doc_id 来检查数据库中是否存在文档。其 syntax 如下 −
We can use doc_id in contains() method to check if a document is present in a database or not. Its syntax is given below −
db.contains(doc_id = value)
Update All Documents
我们可以在 update() 方法中使用 doc_id 来使用给定的文档 ID 更新数据库中的所有文档。以下是其 syntax −
We can use doc_id in update() method to update all the documents in a database with the given document IDs. Here is its syntax −
db.update({key : value}, doc_ids = […])
Remove a Document
我们可以在 remove() 方法中使用 doc_id 来使用给定的文档 ID 删除特定文档或数据库中的所有文档。其 syntax 如下 −
We can use doc_id in remove() method to remove a specific document or all the documents in a database with the given document IDs. Its syntax is given below −
db.remove(doc_ids = […])
我们举几个例子来说明如何在 TinyDB 中使用这些方法的 doc_id 。我们将使用与前几章中相同的 student 数据库。
Let’s take a few examples to demonstrate how you can use doc_id in TinyDB with these methods. We will use the same student database that we have used in all the previous chapters.
Example 1
我们来看看如何使用 doc_id 从数据库的特定文档中获取数据 −
Let’s see how we can use doc_id to get the data of a specific document from a database −
from tinydb import TinyDB
db = TinyDB('student.json')
db.get(doc_id = 5)
它会从 doc_id 为“5”的文档中获取数据。
It will fetch the data from the document with the doc_id "5".
{
'roll_number': 5,
'st_name': 'karan',
'mark': 275,
'subject': 'oracle',
'address': 'benglore'
}
Example 2
让我们看看如何使用 doc_id 来检查数据库中是否包含特定 ID 的文档 −
Let’s see how we can use doc_id to check if the database contains a document with a specific ID −
from tinydb import TinyDB
db = TinyDB('student.json')
db.contains(doc_id = 15)
根据文档的可用性,它将返回 True 或 False。在此情况下,我们的数据库中没有 doc_id 为“15”的文档。因此,它返回 False。
Based on the availability of the document, it will return either True or False. In this case, our database does not have a document with the doc_id "15". Hence, it returns False.
False
Example 3
让我们看看如何使用 doc_id 来更新数据库的文档 −
Let’s see how we can use doc_id to update the documents of our database −
from tinydb import TinyDB
db = TinyDB('student.json')
db.update({'mark':'280'}, doc_ids = [4])
在这里,我们更新了 doc_id 为“4”的文档的“marks”字段。若要检查更新后的数据,请使用以下查询 −
Here, we updated the "marks" field of the document with the doc_id "4". To check the updated data, use the following query −
print(db.get(doc_id=4))
它将显示 doc_id 为“4”的文档的更新后数据 −
It will display the updated data of the document with the doc_id "4" −
{
'roll_number': 4,
'st_name': 'lakan',
'mark': '280',
'subject': 'MySQL',
'address': 'mumbai'
}
Example 4
让我们看看如何使用 doc_id 来从数据库中删除特定文档 −
Let’s see how we can use doc_id to remove specific documents from our database −
from tinydb import TinyDB
db = TinyDB('student.json')
db.remove(doc_ids = [3,4])
在这里,我们删除了 doc_id 为“3”和“4”的两个文档。若要验证,请使用以下 get() 查询 −
Here, we removed two documents with doc_ids "3" and "4". To verify, use the following get() queries −
db.get(doc_id=3)
db.get(doc_id=4)
它将显示以下输出 −
It will show the following output −
None
None
这意味着我们已成功删除了 doc_id 为“3”和“4”的文档。
It means that we have successfully removed the documents with doc_ids "3" and "4".