Cập nhật MongoDB

MongoDB cung cấp lệnh update() để cập nhật các tài liệu của một bộ sưu tập. Để chỉ cập nhật những tài liệu bạn muốn cập nhật, bạn có thể thêm tiêu chí vào câu lệnh cập nhật để chỉ những tài liệu được chọn mới được cập nhật

Các tham số cơ bản trong lệnh là điều kiện để tài liệu cần cập nhật, tiếp theo là sửa đổi cần thực hiện

Ví dụ sau đây cho thấy làm thế nào điều này có thể được thực hiện

Bước 1) Ra lệnh cập nhật

Bước 2) Chọn điều kiện mà bạn muốn sử dụng để quyết định tài liệu nào cần được cập nhật. Trong ví dụ của chúng tôi, chúng tôi muốn cập nhật tài liệu có ID nhân viên 22

Bước 3) Sử dụng lệnh set để sửa đổi Tên trường

Bước 4) Chọn Tên trường bạn muốn sửa đổi và nhập giá trị mới cho phù hợp

db.Employee.update(
{"Employeeid" : 1},
{$set: { "EmployeeName" : "NewMartin"}});

Nếu lệnh được thực hiện thành công, Kết quả sau sẽ được hiển thị

đầu ra

Cập nhật MongoDB

Đầu ra hiển thị rõ ràng rằng một bản ghi phù hợp với điều kiện và do đó giá trị trường liên quan đã được sửa đổi

Các phương thức update() và save() của MongoDB được sử dụng để cập nhật tài liệu vào một bộ sưu tập. Phương thức update() cập nhật các giá trị trong tài liệu hiện có trong khi phương thức save() thay thế tài liệu hiện có bằng tài liệu được truyền trong phương thức save()

Phương thức cập nhật MongoDB()

Phương thức update() cập nhật các giá trị trong tài liệu hiện có

cú pháp

Cú pháp cơ bản của phương thức update() như sau -

>db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA)

Ví dụ

Hãy xem xét bộ sưu tập mycol có dữ liệu sau

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}

Ví dụ sau sẽ đặt tiêu đề mới 'Hướng dẫn MongoDB mới' cho các tài liệu có tiêu đề là 'Tổng quan về MongoDB'

>db.mycol.update({'title':'MongoDB Overview'},{$set:{'title':'New MongoDB Tutorial'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
>db.mycol.find()
{ "_id" : ObjectId(5983548781331adf45ec5), "title":"New MongoDB Tutorial"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
>

Theo mặc định, MongoDB sẽ chỉ cập nhật một tài liệu duy nhất. Để cập nhật nhiều tài liệu, bạn cần đặt tham số 'multi' thành true

>db.mycol.update({'title':'MongoDB Overview'},
   {$set:{'title':'New MongoDB Tutorial'}},{multi:true})

Phương thức Lưu () MongoDB

Phương thức save() thay thế tài liệu hiện có bằng tài liệu mới được truyền vào phương thức save()

cú pháp

Cú pháp cơ bản của phương thức save() trong MongoDB được hiển thị bên dưới -

>db.COLLECTION_NAME.save({_id:ObjectId(),NEW_DATA})

Ví dụ

Ví dụ sau sẽ thay thế tài liệu bằng _id '5983548781331adf45ec5'

>db.mycol.save(
   {
      "_id" : ObjectId("507f191e810c19729de860ea"), 
		"title":"Tutorials Point New Topic",
      "by":"Tutorials Point"
   }
)
WriteResult({
	"nMatched" : 0,
	"nUpserted" : 1,
	"nModified" : 0,
	"_id" : ObjectId("507f191e810c19729de860ea")
})
>db.mycol.find()
{ "_id" : ObjectId("507f191e810c19729de860e6"), "title":"Tutorials Point New Topic",
   "by":"Tutorials Point"}
{ "_id" : ObjectId("507f191e810c19729de860e6"), "title":"NoSQL Overview"}
{ "_id" : ObjectId("507f191e810c19729de860e6"), "title":"Tutorials Point Overview"}
>

Phương thức findOneAndUpdate() của MongoDB

Phương thức findOneAndUpdate() cập nhật các giá trị trong tài liệu hiện có

cú pháp

Cú pháp cơ bản của phương thức findOneAndUpdate() như sau -

>db.COLLECTION_NAME.findOneAndUpdate(SELECTIOIN_CRITERIA, UPDATED_DATA)

Ví dụ

Giả sử chúng ta đã tạo một bộ sưu tập có tên empDetails và chèn ba tài liệu vào đó như hình bên dưới -

________số 8

Ví dụ sau cập nhật giá trị tuổi và email của tài liệu có tên 'Radhika'

> db.empDetails.findOneAndUpdate(
	{First_Name: 'Radhika'},
	{ $set: { Age: '30',e_mail: '[email protected]'}}
)
{
	"_id" : ObjectId("5dd6636870fb13eec3963bf5"),
	"First_Name" : "Radhika",
	"Last_Name" : "Sharma",
	"Age" : "30",
	"e_mail" : "[email protected]",
	"phone" : "9000012345"
}

Phương thức cập nhật MongoDBOne()

Phương pháp này cập nhật một tài liệu phù hợp với bộ lọc đã cho

cú pháp

Cú pháp cơ bản của phương thức updateOne() như sau -

>db.COLLECTION_NAME.update(SELECTION_CRITERIA, UPDATED_DATA)
0

Ví dụ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
0

Phương thức updateMany() của MongoDB

Phương thức updateMany() cập nhật tất cả các tài liệu khớp với bộ lọc đã cho

cú pháp

Cú pháp cơ bản của phương thức updateMany() như sau -

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
1

Ví dụ

{ "_id" : ObjectId(5983548781331adf45ec5), "title":"MongoDB Overview"}
{ "_id" : ObjectId(5983548781331adf45ec6), "title":"NoSQL Overview"}
{ "_id" : ObjectId(5983548781331adf45ec7), "title":"Tutorials Point Overview"}
2

Bạn có thể thấy các giá trị được cập nhật nếu bạn truy xuất nội dung của tài liệu bằng phương thức find như bên dưới -

Cập nhật hoạt động như thế nào MongoDB?

Phương thức update() cập nhật các giá trị trong tài liệu hiện có trong bộ sưu tập của MongoDB . Khi bạn cập nhật tài liệu của mình, giá trị của trường _id không thay đổi. Theo mặc định, db. thu thập.

Làm cách nào để cập nhật một trường trong MongoDB?

Cập nhật tài liệu cơ bản .
Bước 1) Ra lệnh cập nhật
Bước 2) Chọn điều kiện mà bạn muốn sử dụng để quyết định tài liệu nào cần được cập nhật. .
Bước 3) Sử dụng lệnh set để sửa đổi Tên trường
Bước 4) Chọn Tên trường bạn muốn sửa đổi và nhập giá trị mới cho phù hợp
đầu ra

Làm cách nào để cập nhật MongoDB trong Linux?

(Linux) Tải xuống mongodb-linux-x86_64-3. 6. x. tgz từ Trung tâm tải xuống MongoDB. Thay thế các tệp nhị phân hiện có trong thư mục .