Computer >> Máy Tính >  >> Lập trình >> MongoDB

Làm thế nào để tạo một trường duy nhất trong MongoDB?

Để 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"}