gpt4 book ai didi

python - 可以在tinydb上输入文档ID吗? upsert 是可能的吗?

转载 作者:行者123 更新时间:2023-12-04 16:11:11 25 4
gpt4 key购买 nike

将文档插入 TinyDB 数据库时可以定义文档 ID?
例如(来自教程)https://pypi.python.org/pypi/tinydb

from tinydb import TinyDB, where

from tinydb import TinyDB, where
db = TinyDB('./db.json')
db.insert({'int': 1, 'char': 'a'})
db.insert({'int': 1, 'char': 'b'}

但是如果我们看到生成的文档:
{"_default": {"1": {"int": 1, "char": "a"}, "2": {"int": 1, "char": "b"}}}

诸如“1”和“2”之类的 ID 由 TinyDB 自动决定。插入文档时是否可以选择该ID?
另外,可以进行upsert吗?

谢谢! :)

最佳答案

是的,您可以选择内部 ID doc_id .

 from tinydb import table, TinyDB, Query

db = TinyDB('db.json')
db.insert(table.Document({'name': 'John', 'age': 22}, doc_id=12))
这是输出:
 {"_default": {"12": {"name": "John", "age": 22}}}
是的,这也适用于 upsert .
User = Query()
db.upsert(table.Document({'name': 'John', 'age': 50}, doc_id=12), User.name == 'John')

关于python - 可以在tinydb上输入文档ID吗? upsert 是可能的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40925377/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com