2012-03-12 142 views
9

有什么办法可以从CouchDB数据库中删除所有数据?如何删除CouchDB中的数据库中的所有记录?

我在做什么目前正在下降,并重新创建整个数据库

curl -X DELETE http://localhost:5984/foobar 
curl -X PUT http://localhost:5984/foobar 

,但我不知道这是否是做到这一点的最好办法。

回答

4

没有办法来丢弃数据除了删除每个文档(或在_bulk更新一束已知DOC-ID的与_rev=xxx and "_deleted:true"

删除并重新创建是确定。

8

我发现了这个书签,它为您添加了功能到蒲团视图。它增加了你全选,删除所有按钮和删除复选框删除列。这可能是一个好的开始,但你可能想修改它一下,因为它似乎并不一直工作。

http://www.elijahmanor.com/couch-potato-bookmarklet-lazy-features-for-couchdbs-futon/

+0

好的,谢谢! – zanona 2013-11-06 13:29:20

+1

网址已更改为http://www.elijahmanor.com/couch-potato-bookmarklet-lazy-features-for-couchdbs-futon/ – Sparky 2014-09-16 05:12:47

4

的代码使用Node.js的下面删除所有数据库(不是所有的记录!)您需要安装nano,之后执行下面的代码:

var nano = require('nano')('http://localhost:5984'); 

nano.db.list(function(err, body) { 
    body.forEach(function(db) { 
    nano.db.destroy(db); 
    }); 
}); 
0

我做了一个命令行工具做除了通过蒲团给出的那些我的CouchDB服务器上的一些操作。它支持现在删除,备份和恢复文档。

你可以找到它here.

0

您可以使用此袋分贝插件。它所做的是删除你的软件包数据库中的所有文件。它可以用于服务器端和客户端的JavaScript应用程序。 这里是链接:Pouch Db Erase Plugin

1

这里是一个Python脚本来完成这项工作:

import couchdb 
couch = couchdb.Server('http://localhost:5984/') 
couchdb = 'DATABASE' 
db = couch[couchdb] 
for id in db: 
    db.delete(db[id]) 
相关问题