YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Portuguese, Brazilian subtitles

← Set Unset - Data Wranging with MongoDB

Get Embed Code
4 Languages

Showing Revision 8 created 06/20/2016 by Udacity Robot.

  1. Acabamos de analisar um modo de
  2. modificar um documento usando o método save. Agora, vamos
  3. ver um meio alternativo de atualizar documentos. Quero
  4. apresentar a você duas coisas.
  5. Uma, o comando update ou método, no pymongo é
  6. um método em objetos de coleção. E o operador set. Vamos
  7. falar sobre update primeiro. Update espera um documento de consulta
  8. como seu primeiro parâmetro e, como segundo parâmetro,
  9. espera um documento de atualização. Esse
  10. documento de atualização especifica quais operações o MongoDB deve executar
  11. no documento que corresponda a esta consulta. Por
  12. padrão, update atua em apenas um documento.
  13. O primeiro que ele encontra que corresponda ao documento de consulta. A semântica do conjunto é, se
  14. este documento ainda não contiver os
  15. campos especificados aqui, o que deverá acontecer é
  16. que esse campo deve ser adicionado com esse valor.
  17. Se o documento já contiver esse campo, esse
  18. campo será atualizado com o valor fornecido.
  19. Antes de executar este código, gostaria
  20. de apresentar a você o operador
  21. inverse para conjunto, que é unset. Estas
  22. duas partes de código são quase exatamente
  23. iguais. As únicas diferenças estão aqui e aqui.
  24. A semântica de unset é, para qualquer documento que corresponda
  25. a esta consulta, se ele tiver o campo especificado aqui,
  26. remova-o. Esse valor é ignorado. Agora, se este
  27. documento ainda não tiver esse campo, essa
  28. chamada não terá efeito. Agora observamos
  29. o operador set e o operador unset, e
  30. o uso deles com o comando update. Vamos
  31. executar esses dois programas. E ver qual é o
  32. efeito deles. Mas, primeiro, quero consultar este
  33. documento no shell do Mongo para ver seu estado atual,
  34. e poderemos ver como a execução desses dois programas muda
  35. esse estado atual. Vou executar um comando findOne
  36. aqui. Esse é exatamente o mesmo comando que
  37. vimos nos programas Python que analisamos. A única
  38. diferença está no nome. E os nomes são simplesmente diferentes
  39. para corresponder às convenções de representação de duas linguagens de programação diferentes.
  40. Neste caso, JavaScript, porque a linguagem do
  41. shell do Mongo é JavaScript. E, em outro caso,
  42. Python, porque estamos usando o driver Pymongo. Certo? Então,
  43. vamos emitir esta consulta. Quero ressaltar
  44. que Iso Code está presente de fato. Vamos
  45. executar o exemplo unset, voltar
  46. para o shell do Mongo e emitir nossa consulta novamente.
  47. Certo? Observe que isoCountryCode
  48. desapareceu porque acabamos de executar este comando. Vamos
  49. executar nosso exemplo set. Lembre-se de que
  50. ele simplesmente usa o operador set. Vamos
  51. fazer nossa consulta novamente no shell do Mongo, e
  52. veja que isoCountryCode está
  53. de volta em nosso documento. É isso, analisamos
  54. dois comandos diferentes que nos permitem modificar documentos.
  55. O comando save e o comando update. Também
  56. analisamos dois operadores diferentes sendo usados em conjunto
  57. com o comando update. Tudo bem, antes de continuarmos,
  58. sinto que preciso fazer um
  59. alerta. É realmente fácil esquecer de colocar um
  60. operador aqui. Certo? Se você emitir o comando desta
  61. forma, o documento inteiro, o
  62. documento correspondente a esta consulta, será substituído para que ele
  63. contenha o campo ID sublinhado e somente este campo. Basicamente,
  64. o documento será composto inteiramente por um
  65. único campo. Portanto, muita atenção para usar update corretamente.