MongoDB: Updating the document while entirely replacing it
db.so.insert("name":"Bob", "sex": "Male", "location": "France")
db.so.update("name":"Bob", // search
"name":"Bob", "occupation":"The Builder") // replace
I need to do a full update, ie. replace the entire document with the new object, but in this case the sex
and location
fields remain since I'm not providing those fields in the update query.
php mongodb
add a comment |
db.so.insert("name":"Bob", "sex": "Male", "location": "France")
db.so.update("name":"Bob", // search
"name":"Bob", "occupation":"The Builder") // replace
I need to do a full update, ie. replace the entire document with the new object, but in this case the sex
and location
fields remain since I'm not providing those fields in the update query.
php mongodb
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
1
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18
add a comment |
db.so.insert("name":"Bob", "sex": "Male", "location": "France")
db.so.update("name":"Bob", // search
"name":"Bob", "occupation":"The Builder") // replace
I need to do a full update, ie. replace the entire document with the new object, but in this case the sex
and location
fields remain since I'm not providing those fields in the update query.
php mongodb
db.so.insert("name":"Bob", "sex": "Male", "location": "France")
db.so.update("name":"Bob", // search
"name":"Bob", "occupation":"The Builder") // replace
I need to do a full update, ie. replace the entire document with the new object, but in this case the sex
and location
fields remain since I'm not providing those fields in the update query.
php mongodb
php mongodb
asked Dec 12 '16 at 21:39
3zzy3zzy
25.9k84225361
25.9k84225361
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
1
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18
add a comment |
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
1
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
1
1
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18
add a comment |
1 Answer
1
active
oldest
votes
May be you can try findAndReplace if your intention was to replace the document.
replaceOne
(since 3.2) is much faster.
– 3zzy
Dec 13 '16 at 3:00
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f41110059%2fmongodb-updating-the-document-while-entirely-replacing-it%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
May be you can try findAndReplace if your intention was to replace the document.
replaceOne
(since 3.2) is much faster.
– 3zzy
Dec 13 '16 at 3:00
add a comment |
May be you can try findAndReplace if your intention was to replace the document.
replaceOne
(since 3.2) is much faster.
– 3zzy
Dec 13 '16 at 3:00
add a comment |
May be you can try findAndReplace if your intention was to replace the document.
May be you can try findAndReplace if your intention was to replace the document.
answered Dec 12 '16 at 23:23
VeeramVeeram
39.8k33458
39.8k33458
replaceOne
(since 3.2) is much faster.
– 3zzy
Dec 13 '16 at 3:00
add a comment |
replaceOne
(since 3.2) is much faster.
– 3zzy
Dec 13 '16 at 3:00
replaceOne
(since 3.2) is much faster.– 3zzy
Dec 13 '16 at 3:00
replaceOne
(since 3.2) is much faster.– 3zzy
Dec 13 '16 at 3:00
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f41110059%2fmongodb-updating-the-document-while-entirely-replacing-it%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Have you tried using the upsert option of the update?
– Matt Clark
Dec 12 '16 at 21:42
I'm already using upsert, I believe its for when the document doesn't exist at all, it will insert it.
– 3zzy
Dec 12 '16 at 21:42
1
May be you can try this docs.mongodb.com/php-library/master/reference/method/… if your intention was to replace the document.
– Veeram
Dec 12 '16 at 22:47
@Veeram Thats it, thanks! If you could post as an answer, I'll accept it.
– 3zzy
Dec 12 '16 at 23:18