PouchDB - 批量创建



您可以使用 **db.bulkDocs()** 方法在 PouchDB 中创建文档数组(批处理)。在创建文档时,如果使用此方法不提供 _id 值,PouchDB 会代表我们为批量中的所有文档生成唯一的 ID。

语法

以下是使用 PouchDB 的 **db.bulkDocs()** 方法的语法。您可以将所有要创建的文档存储在 PouchDB 的数组中,并将其作为参数传递给此方法。除此之外,此方法还接受回调(可选)函数作为参数。

db.bulkDocs(docs, [options], [callback])

示例

以下是如何使用 **db.bulkDocs()** 方法在 PouchDB 中创建多个文档的示例。我们创建的文档应为 JSON 格式,一组由逗号 (,) 分隔的键值对,并用花括号 ({}) 括起来。

//Requiring the package
var PouchDB = require('PouchDB');

//Creating the database object
var db = new PouchDB('my_database');

//Preparing the documents array
doc1 = {_id: '001', name: 'Ram', age: 23, Designation: 'Programmer'}
doc2 = {_id: '002', name: 'Robert', age: 24, Designation: 'Programmer'}
doc3 = {_id: '003', name: 'Rahim', age: 25, Designation: 'Programmer'}
docs = [doc1, doc2, doc3]

//Inserting Documents
db.bulkDocs(docs, function(err, response) {
   if (err) {
      return console.log(err);
   } else {
      console.log("Documents created Successfully");
   }
});

将上述代码保存到名为 **Create_Batch.js** 的文件中。打开命令提示符并使用 **node** 执行 JavaScript 文件,如下所示。

C:\PouchDB_Examples >node Create_Batch.js

这会在名为 **my_database** 的 PouchDB 数据库中创建给定的文档,该数据库存储在本地。将显示以下消息。

Documents created Successfully

在远程数据库中插入批处理

您可以在存储在服务器(CouchDB)上的远程数据库中插入文档数组。

为此,您需要传递数据库的路径,而不是数据库名称,在该数据库中我们希望在 CouchDB 中创建文档。

示例

假设 CouchDB 服务器中有一个名为 **my_database** 的数据库。然后,如果您使用 URL **http://127.0.0.1:5984/_utils/index.html** 验证 CouchDB 中的数据库列表,您将获得以下屏幕截图。

Inserting a Batch in a Remote Database

以下是在名为 **my_database** 的数据库中插入文档数组的示例,该数据库保存在 CouchDB 服务器中。

//Requiring the package
var PouchDB = require('PouchDB');

//Creating the database object
var db = new PouchDB('https://127.0.0.1:5984/my_database');

//Preparing the documents array

doc1 = {_id: '001', name: 'Ram', age: 23, Designation: 'Programmer'}
doc2 = {_id: '002', name: 'Robert', age: 24, Designation: 'Programmer'}
doc3 = {_id: '003', name: 'Rahim', age: 25, Designation: 'Programmer'}

docs = [doc1, doc2, doc3]

//Inserting Documents
db.bulkDocs(docs, function(err, response) {
   if (err) {
      return console.log(err);
   } else {
      console.log("Documents created Successfully");
   }
});

将上述代码保存到名为 **Remote_Create_Batch.js** 的文件中。打开命令提示符并使用 **node** 执行 JavaScript 文件,如下所示。

C:\PouchDB_Examples >node Remote_Create_Batch.js

这会在存储在 CouchDB 中的名为 **my_database** 的 PouchDB 数据库中创建给定的文档。将显示以下消息。

Document created Successfully

验证

执行上述程序后,如果您再次访问 **my_database**,您可以观察到创建的文档,如下面的屏幕截图所示。

Inserting Batch Verification
广告