MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Lỗi MongoDB:Không thể sử dụng ghi có thể thử lại với giới hạn =0

Hàm findOneAndRemove () sẽ hoạt động tương ứng hơn vì nó cụ thể với phương thức lọc được truyền trong hàm .findOneAndRemove (bộ lọc, tùy chọn) để loại bỏ đối tượng được lọc. Tuy nhiên, nếu quá trình xóa bị gián đoạn bởi kết nối, retryRewrites =true sẽ cố gắng thực thi chức năng khi được kết nối.

Thông tin thêm tại đây

Khi sử dụng retryRewrites được đặt thành true sẽ yêu cầu MongoDB thử lại cùng một quá trình, điều này trên thực tế có thể giúp ngăn kết nối không thành công với cơ sở dữ liệu và hoạt động chính xác, vì vậy bạn nên bật nó lên.

Thông tin thêm tại đây

Nếu bạn đang sử dụng Mongoose 5 ^ và MongoDB 3.6 thì mã của bạn được viết tốt hơn như:

mongoose.connect('mongodb.....mongodb.net/test?retryWrites=true', (err) => {
if(err){
    console.log("Could not connect to MongoDB (DATA CENTER) ");
    }else{
        console.log("DATA CENTER - Connected")
    }
});// CONNECTING TO MONGODB v. 3.6

router.delete('/:productId', (req, res, next) => {
const id = req.params.productId;
Product.findOneAndRemove({ _id: id })//updated function from .remove()
    .exec()
    .then(result => {
        res.status(200).json({
       message: "Product Removed Successfuly"
     });
    })
    .catch(err => {
        console.log(err);
        res.status(500).json({
            error: err
        })
    }); ;
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách cập nhật nhiều phần tử mảng trong mongodb

  2. Mongo phân loại phức tạp?

  3. Truy vấn Mongodb với các trường trong cùng một tài liệu

  4. MongoDB $ pow

  5. MongoDB $ cos