0

こんにちは、時間に基づいてデータベースの削除を実行しています.cronを使用して時間を設定し、データベースを削除しています.以下はコードです

var cronJob = require('cron').CronJob;
new cronJob('* * * * *', function(){// set the required time
  console.log('inside cron');
  console.log(new Date());
  console.log('You will see this message every minute');
  dbDatadeletion();
}, null, true);

//This function performs the required operations after a particular time
function dbDatadeletion(){
  var mongoose = require('mongoose'); 
  var db1 = mongoose.createConnection('mongodb://localhost/CDB');

  db1.on('error', console.error.bind(console, 'connection error:')); 
  db1.once('open', function callback (){ 
    console.log('Database connectivity established...\n');
    var schema = new mongoose.Schema({ USER_ID:String, APIKEY:String, SERVICE_ORCH_NAME:String, COLLATED_DATA:String });
    var C_DATA_STORE = db1.model('C_DATA_STORE', schema);
    var query = C_DATA_STORE.find();

    console.log('Query Operation is being performed...');
    query.select('COLLATED_DATA SERVICE_ORCH_NAME');
    query.exec(function (err, data) {
      if (err) return handleError(err);
      console.log('Before Deletion');
      console.log(data[0]);
      db1.C_DATA_STORE.remove();
      console.log('After Deletion');
      console.log(data[0]);
    });
  });
}

上記のコードを実行すると、コレクションを削除できません。以下はエラー メッセージです。

TypeError: Cannot call method 'remove' of undefined

これを解決する方法は本当に役に立ちます

4

1 に答える 1

2

コレクションからすべてのドキュメントを削除するには:

C_DATA_STORE.remove(callback)

コレクションを削除するには、ドライバー メソッドを使用します。

C_DATA_STORE.collection.drop(callback)

データベースを削除するには、ドライバー メソッドを使用します。

db1.db.dropDatabase(callback)
于 2013-03-20T12:59:40.353 に答える