修改和删除 Cloudant IBM 数据库中的文档
Modify and delete document in Cloudant IBM Database
是否可以通过查询修改Cloudant数据库中的文档或删除?
我假设提问者正在寻找与 SQL 等效的功能:
UPDATE db SET x = 10 WHERE y > 100;
如果这是问题,那么答案是 Cloudant 没有这样的功能,只有一个原子 update 操作。
可以通过组合对 Cloudant Query API and making updates using the bulk API.
的调用来实现 UPDATE
语句的等价物
另一种选择是使用 couchtato 迭代器工具,它允许对 Cloudant 数据库进行批量更改。
要删除文档,您必须知道文档_id,如果不知道_id,则必须在数据库中查找该文档,检索它,然后获取_id。
要检索文档,您可以使用选择器。例如,假设您有一个包含“名称”字段的文档,您的选择器将类似于
selector = {"name": {"$eq": "你想要的名字"}}
所以对于 python 代码,你会得到类似
的东西
def retrieve_db_data(db_name, selector):
client = connect_to_db()
db = client[db_name]
results = db.get_query_result(selector)
data = results.all()
return data
在“数据”中,您将拥有 _id
然后你可以使用这样的东西来删除数据
def delete_document(db_name, doc_id):
client = connect_to_db()
client.connect()
db = client[db_name]
document = db[doc_id]
document.delete()
是否可以通过查询修改Cloudant数据库中的文档或删除?
我假设提问者正在寻找与 SQL 等效的功能:
UPDATE db SET x = 10 WHERE y > 100;
如果这是问题,那么答案是 Cloudant 没有这样的功能,只有一个原子 update 操作。
可以通过组合对 Cloudant Query API and making updates using the bulk API.
的调用来实现UPDATE
语句的等价物
另一种选择是使用 couchtato 迭代器工具,它允许对 Cloudant 数据库进行批量更改。
要删除文档,您必须知道文档_id,如果不知道_id,则必须在数据库中查找该文档,检索它,然后获取_id。 要检索文档,您可以使用选择器。例如,假设您有一个包含“名称”字段的文档,您的选择器将类似于 selector = {"name": {"$eq": "你想要的名字"}} 所以对于 python 代码,你会得到类似
的东西def retrieve_db_data(db_name, selector):
client = connect_to_db()
db = client[db_name]
results = db.get_query_result(selector)
data = results.all()
return data
在“数据”中,您将拥有 _id 然后你可以使用这样的东西来删除数据
def delete_document(db_name, doc_id):
client = connect_to_db()
client.connect()
db = client[db_name]
document = db[doc_id]
document.delete()