Pouchdb-create-batch

提供:Dev Guides
移動先:案内検索

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/indexl を使用してCouchDB内のデータベースのリストを確認すると、次のスクリーンショットが表示されます。

リモートデータベースへのバッチの挿入

以下は、CouchDBサーバーに保存されている my_database という名前のデータベースにドキュメントの配列を挿入する例です。

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

//Creating the database object
var db = new PouchDB('http://localhost: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* に再度アクセスすると、上記のプログラムを実行した後、次のスクリーンショットに示すように作成されたドキュメントを確認できます。

バッチ検証の挿入