Tài liệu về nhà → node.js → Node.js
Bạn có thể xóa nhiều tài liệu trong một bộ sưu tập ngay lập tức bằng phương thức comcand.deletemany []. Chuyển tài liệu truy vấn cho phương thức deleteMany[]
để chỉ định một tập hợp con của các tài liệu trong bộ sưu tập để xóa. Nếu bạn không cung cấp một tài liệu truy vấn [hoặc nếu bạn cung cấp một tài liệu trống], MongoDB sẽ khớp với tất cả các tài liệu trong bộ sưu tập và xóa chúng. Mặc dù bạn có thể sử dụng deleteMany[]
để xóa tất cả các tài liệu trong một bộ sưu tập, hãy xem xét sử dụng Drop [] để có hiệu suất tốt hơn và mã rõ ràng hơn.collection.deleteMany[] method. Pass a
query document to the deleteMany[]
method to specify a subset of documents in the collection to delete. If you do not provide a query document [or if you provide an empty document], MongoDB matches all documents in the collection and deletes them. While you can use deleteMany[]
to delete all documents in a collection, consider using drop[] instead for
better performance and clearer code.
Bạn có thể chỉ định các tùy chọn bổ sung trong đối tượng options
được truyền trong tham số thứ hai của phương thức deleteMany[]
. Để biết thêm thông tin chi tiết, xem tài liệu API DeletMany [].deleteMany[] API documentation.
Đoạn trích sau đây xóa nhiều tài liệu khỏi bộ sưu tập movies
. Nó sử dụng một tài liệu truy vấn cấu hình truy vấn để khớp và xóa phim với tiêu đề "Santa Claus".query
document that configures the query to match and delete movies with the title "Santa Claus".
Ghi chú
Bạn có thể sử dụng ví dụ này để kết nối với một thể hiện của MongoDB và tương tác với cơ sở dữ liệu có chứa dữ liệu mẫu. Để tìm hiểu thêm về việc kết nối với thể hiện MongoDB của bạn và tải một bộ dữ liệu mẫu, hãy xem Hướng dẫn sử dụng ví dụ.
Lần đầu tiên bạn chạy ví dụ trước, bạn sẽ thấy đầu ra sau:
Trên các lần chạy tiếp theo của ví dụ, vì bạn đã xóa tất cả các tài liệu liên quan, bạn sẽ thấy đầu ra sau:
Phương thức deletemany []. Phương pháp này xóa nhiều tài liệu khỏi bộ sưu tập theo bộ lọc. deletemany [] là một phương thức vỏ Mongo, có thể xóa nhiều tài liệu. Phương pháp này có thể được sử dụng trong các giao dịch đa tài liệu.
Làm cách nào để xóa một bộ sưu tập trong MongoDB NodeJS?
MongoClient.connect['mongodb://localhost/mochatests', function[err, db] {
db.collection['contacts', {}, function[err, contacts] {
contacts.remove[{}, function[err, result] {
if [err] {
console.log[err];
}
console.log[result];
db.close[];
}];
}];
}];
Xóa tài liệu
Để xóa một bản ghi hoặc tài liệu như được gọi trong MongoDB, chúng tôi sử dụng phương thức deleteOne[]
.
Tham số đầu tiên của phương thức deleteOne[]
là một đối tượng truy vấn xác định tài liệu nào để xóa.
Lưu ý: Nếu truy vấn tìm thấy nhiều hơn một tài liệu, chỉ có lần xuất hiện đầu tiên bị xóa. If the query finds more than one document, only the first occurrence is deleted.
Thí dụ
Xóa tài liệu bằng địa chỉ "Núi 21":
var Mongoclient = Yêu cầu ['MongoDB']. Mongoclient; var url = "MongoDB: // localhost: 27017/";
var url = "mongodb://localhost:27017/";
Mongoclient.connect [url, function [err, db] {& nbsp; if [err] ném err; & nbsp; var dbo = db.db ["mydb"]; & nbsp; var myquery = {địa chỉ: 'Mountain 21'}; & NBSP; ]; & nbsp; & nbsp; & nbsp; db.close []; & nbsp;}];}];
if [err] throw err;
var dbo = db.db["mydb"];
var myquery = { address: 'Mountain 21' };
dbo.collection["customers"].deleteOne[myquery, function[err, obj] {
if [err] throw err;
console.log["1 document deleted"];
db.close[];
}];
}];
Chạy ví dụ »
Lưu mã ở trên trong một tệp có tên là "demo_delete.js" và chạy tệp:
Chạy "demo_delete.js"
C: \ Users \ Your Name> Node demo_delete.js
Điều này sẽ cung cấp cho bạn kết quả này:
Xóa nhiều
Để xóa nhiều tài liệu, hãy sử dụng phương thức deleteMany[]
.
Tham số đầu tiên của phương thức deleteMany[]
là một đối tượng truy vấn xác định tài liệu nào sẽ xóa.
Thí dụ
Xóa tài liệu bằng địa chỉ "Núi 21":
var Mongoclient = Yêu cầu ['MongoDB']. Mongoclient; var url = "MongoDB: // localhost: 27017/";
var url = "mongodb://localhost:27017/";
Mongoclient.connect [url, function [err, db] {& nbsp; if [err] ném err; & nbsp; var dbo = db.db ["mydb"]; & nbsp; var myquery = {địa chỉ: 'Mountain 21'}; & NBSP; ]; & nbsp; & nbsp; & nbsp; db.close []; & nbsp;}];}];
if [err] throw err;
var dbo = db.db["mydb"];
var myquery = { address: /^O/ };
dbo.collection["customers"].deleteMany[myquery, function[err, obj]
{
if [err] throw err;
console.log[obj.result.n + " document[s] deleted"];
db.close[];
}];
}];
Chạy ví dụ »
Lưu mã ở trên trong một tệp có tên là "demo_delete.js" và chạy tệp:
Chạy "demo_delete.js"
C: \ Users \ Your Name> Node demo_delete.js
Điều này sẽ cung cấp cho bạn kết quả này:
Xóa nhiều
Để xóa nhiều tài liệu, hãy sử dụng phương thức deleteMany[]
.
Tham số đầu tiên của phương thức deleteMany[]
là một đối tượng truy vấn xác định tài liệu nào sẽ xóa.
Xóa tất cả các tài liệu là địa chỉ bắt đầu bằng chữ "O":
Mongoclient.connect [url, function [err, db] {& nbsp; if [err] ném err; & nbsp; var dbo = db.db ["mydb"]; & nbsp; var myquery = {địa chỉ: /^o /}; & nbsp; dbo.collection ["Khách hàng"]. Deletemany [MyQuery, Function [err, obj] + "tài liệu đã xóa"]; & nbsp; & nbsp; & nbsp; db.close []; & nbsp;}];}];
Thí dụ
Xóa tài liệu bằng địa chỉ "Núi 21":
var Mongoclient = Yêu cầu ['MongoDB']. Mongoclient; var url = "MongoDB: // localhost: 27017/";
Mongoclient.connect [url, function [err, db] {& nbsp; if [err] ném err; & nbsp; var dbo = db.db ["mydb"]; & nbsp; var myquery = {địa chỉ: 'Mountain 21'}; & NBSP; ]; & nbsp; & nbsp; & nbsp; db.close []; & nbsp;}];}];