我有一个JSON文件,格式如下:
"rows": [
{
"key": [
null,
null,
"dco_test_group",
"3d3ce6270fdfuashge12e1d41af93179",
"test_djougou"
],
"value": {
"lat": "31.538208354844658",
"long": "91.98762580927113"
}
},
{
"key": [
null,
null,
"dco_test_group",
"4cda7jhsadgfs6123hsdaa9069ade2",
"test_ouake"
],
"value": {
"lat": "59.696798503352547",
"long": "11.6626995307082464"
}
},
我想导入文件,使rows
中的每个对象都成为couchdb文档。现在,我有以下代码:
curl -X PUT --data-binary @"C:\Users\me\Dropbox (Personal)\Research\Folder\location.json" http://127.0.0.1:5984/db/document_name
这会添加document_name
内的所有数据。
如果我尝试:
curl -X PUT --data-binary @"C:\Users\me\Dropbox (Personal)\Research\Folder\location.json" http://127.0.0.1:5984/db
创建了一个新的数据库但没有添加任何数据。如何编辑代码以获得所需的输出?
更新1
所有数据都在记录中是否重要?是否有类似于5种常规形式的RDB的规则?
答案 0 :(得分:3)
使用bulk-document-api。以下是docs>>的示例。 https://wiki.apache.org/couchdb/HTTP_Bulk_Document_API#Modify_Multiple_Documents_With_a_Single_Request
$ DB="http://127.0.0.1:5984/mydb"
$ curl -H "Content-type:application/json" -d '{"docs":[{"key":"baz","name":"bazzel"},{"key":"bar","name":"barry"}]}' -X POST $DB/_bulk_docs
$ curl -H "Content-type:application/json" -d @your_file.json -X POST $DB/_bulk_docs
请注意,所有文档都是' docs中的项目。阵列。