Để tạo một trường duy nhất trong MongoDB, hãy sử dụng duy nhất - true. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.demo82.createIndex ({"EmployeeName":1}, {unique:true}); {"createCollectionAutomatically":true, "numIndexesBefore":1, "numIndexesAfter":2, "ok":1}> db.demo82.insertOne ({"EmployeeName":"Chris"}); {"nition ":true," insertId ":ObjectId (" 5e2bfb1b71bf0181ecc422a0 ")}> db.demo82.insertOne ({" EmployeeName ":" David "}); {" inherit ":true," insertId ":ObjectId (" 5e2bfb1f71bf0181ecc422a1 ")}> db.demo82.insertOne ({" EmployeeName ":" Chris "}); 2020-01-25T13:54:00.410+ 0530 E QUERY [js] WriteError:E11000 bộ sưu tập lỗi khóa trùng lặp:test.demo82 index:EmployeeName_1 khóa trùng lặp:{:"Chris"}:WriteError ({"index":0, "code":11000, "errmsg":" Thu thập lỗi khóa trùng lặp E11000:chỉ mục test.demo82:Khóa trùng lặp EmployeeName_1:{:\ "Chris \"} "," op ":{" _id ":ObjectId (" 5e2bfb2071bf0181ecc422a2 ")," EmployeeName ":" Chris "}} ) WriteError@src/mongo/shell/bulk_api.js:461:48Bulk/mergeBatchResults@src/mongo/shell/bulk_api.js:841:49Bulk / executeBa tch@src/mongo/shell/bulk_api.js:906:13Bulk/this.execute@src/mongo/shell/bulk_api.js:1150:21DBCollection.prototype.insertOne@src/mongo/shell/crud_api.js:25 9 @ (shell):1:1
Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -
> db.demo82.find ();
Điều này sẽ tạo ra kết quả sau. Vì chúng tôi sử dụng duy nhất - true ở trên, do đó các giá trị trùng lặp sẽ không bị chèn -
{"_id":ObjectId ("5e2bfb1b71bf0181ecc422a0"), "EmployeeName":"Chris"} {"_id":ObjectId ("5e2bfb1f71bf0181ecc422a1"), "EmployeeName":"David"}