PouchDB – Eliminar paquete

Puede eliminar una serie de documentos en PouchDB a la vez usando bulkDocs () método. Para hacer esto, necesita crear una matriz de documentos que se eliminarán, donde cada documento debe contener _Identificación y _Rvdo… Además de estos, debe agregar otro par clave-valor. _deleted: true

Suponga una base de datos llamada my_database que se almacena localmente en PouchDB contiene 3 documentos a saber, doc1, doc2, doc3 con el siguiente contenido.

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'}

Y digamos que tenemos que eliminar los tres documentos. Entonces, en primer lugar, debes conseguirlos. _Rvdo valores. Así que obtenga el contenido de estos documentos utilizando el siguiente código.

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

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

//Retrieving all the documents in PouchDB
db.allDocs({include_docs: true},function(err, docs) {
   if (err) {
      return console.log(err);
   } else {
      console.log(docs.rows);
   }
});

Guarde el código anterior como bulk_fetch.js… La ejecución del programa anterior le proporciona los valores _id y _rev de los documentos en la base de datos como se muestra a continuación.

[ 
   { 
      id: '001',
      key: '001',
      value: { rev: '1-1604b0c3ff69dc1e261265fd60808404' } 
   },
   { 
      id: '002',
      key: '002',
      value: { rev: '1-b5e49db7e984841bf12a13e3ee548125' } 
   },
   { 
      id: '003',
      key: '003',
      value: { rev: '1-a7b342786ecc707aa91f3b321a177b51' } 
   } 
]

Ahora puede eliminar documentos utilizando sus respectivos _Identificación y _Rvdo valores como se muestra a continuación.

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

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

//Preparing the document
docs = [{_id : '001', _rev: '2-77f3a9974dd578d12f3f2a33aae64c8d', _deleted : true },
      {_id : '002', _rev: '2-43966007568ce9567c96422195fcfa0d', _deleted : true }, 
      {_id : '003', _rev: '2-6c5349652527f4f39583ff14f23cd677',_deleted : true }]

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

Guarde el código anterior en un archivo llamado Delete_All_Document.js… Abra un símbolo del sistema y ejecute el archivo JavaScript utilizando el nodo como se muestra a continuación.

C:PouchDB_Examples >node Delete_All_Document.js

Esto elimina todos los documentos que existen en la base de datos denominada my_database que se almacena localmente, se muestra el siguiente mensaje.

Documents Deleted Successfully

Ahora si lo haces bulk_fetch.js programa, puede ver un paréntesis vacío en la consola que indica que la base de datos está vacía, como se muestra a continuación.

[]

Eliminar un paquete de una base de datos remota

Puede actualizar todos los documentos desde una base de datos que se almacena de forma remota en un servidor (CouchDB).

Para hacer esto, en lugar del nombre de la base de datos, debe pasar la ruta a la base de datos en CouchDB, que contiene el documento que se va a leer.

Ejemplo

Digamos que hay una base de datos llamada my_database en el servidor CouchDB. Luego, si verifica la lista de bases de datos en CouchDB usando la url http://127.0.0.1:5984/_utils/index.html obtendrá la siguiente captura de pantalla.

Eliminar un paquete de una base de datos remota

Si seleccionamos una base de datos llamada my_database, puede notar que contiene 3 documentos como se muestra en la siguiente captura de pantalla.

Eliminar un paquete

A continuación se muestra un ejemplo de cómo eliminar todos los documentos que existen en una base de datos denominada my_database que se almacena en el servidor CouchDB.

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

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

//Preparing the document
docs = [{_id : '001', _rev: '4-6bc8d9c7a60fed2ed1667ec0740c1f39', _deleted : true },
      {_id : '002', _rev: '2-1aa24ce77d96bb9d2a0675cdf1e113e0', _deleted : true },
      {_id : '003', _rev: '2-fa113149ba618eda77f73072974a2bc1',_deleted : true }]

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

Guarde el código anterior en un archivo llamado Remote_delete_AllDocuments.js… Abra un símbolo del sistema y ejecute el archivo JavaScript utilizando el nodo como se muestra a continuación.

C:PouchDB_Examples >node Remote_Delete_AllDocuments.js

Esto elimina el contenido de todo el documento dado que existe en la base de datos denominada my_database que se almacena en CouchDB y muestra el siguiente mensaje.

Documents Deleted Successfully

🚫