SlideShare uma empresa Scribd logo
1 de 12
Code
• Import:
 (use 'somnium.congomongo).

• Connect:
(def conn (make-connection "ldc"
                 :host "127.0.0.1"
                 :port 27017))
Code
• Global Connection:
 (set-connection! conn)

• Local Connection:
 (with-mongo conn (insert! :membros {:name
  “Poletto"}))
Code
• Inserts:
  (insert! :membros {:nome "Poletto", :idade 28})

   {:idade 28, :nome "Poletto", :_id #<ObjectId 4ecaf362f7ef6db25f5a2ccd>}

   (insert! :membros {:nome "Shooter", :idade 21})

   {:idade 21, :nome "Shooter", :_id #<ObjectId 4ecaf438f7ef6db25f5a2cce>}

   (insert! :membros {:nome "Diego", :idade 26})

   {:idade 26, :nome "Diego", :_id #<ObjectId 4ecaf59cf7ef6db25f5a2ccf>}
Code
• Fetch:
  (fetch :membros)
  ( :idade 28, :nome "Poletto"}
  { :idade 21, :nome "Shooter"}
  { :idade 26, :nome "Diego"})
Code
• Fetch:
  (fetch-one :membros :where {:idade {:$lt 25}})
  {:idade 21, :nome "Shooter"}
  (fetch-one :membros :where {:nome
  "Poletto"})
  {:idade 28, :nome "Poletto"}
  (fetch-count :membros)
  3
Code
• Update:
  (def m (fetch-one :membros))
  #'ldc_congomongo.core/m
  (update! :membros m (merge m { :lt {:tema
  "congomongo" } })
  {:lt {:tema "congomongo"}, :idade 28, :nome
  "Poletto"}
Code
• Destroy:
  (def m (fetch-one :membros))
  #'ldc_congomongo.core/m
  (destroy! :membros m)
  #<WriteResult N/A>
MongoDB com Clojure - Inserções, buscas, atualizações e remoções

Mais conteúdo relacionado

Mais de Alexandre Poletto (10)

Agile de Rua
Agile de RuaAgile de Rua
Agile de Rua
 
Hive hcatalog
Hive hcatalogHive hcatalog
Hive hcatalog
 
Twisted
TwistedTwisted
Twisted
 
Erlang
ErlangErlang
Erlang
 
Node jslt
Node jsltNode jslt
Node jslt
 
LDC 5
LDC 5LDC 5
LDC 5
 
Lt hiccup
Lt hiccupLt hiccup
Lt hiccup
 
Qi4j
Qi4j Qi4j
Qi4j
 
Clojure - LDC
Clojure - LDCClojure - LDC
Clojure - LDC
 
Tecnologias
TecnologiasTecnologias
Tecnologias
 

MongoDB com Clojure - Inserções, buscas, atualizações e remoções

  • 1.
  • 2.
  • 3.
  • 4.
  • 5. Code • Import: (use 'somnium.congomongo). • Connect: (def conn (make-connection "ldc" :host "127.0.0.1" :port 27017))
  • 6. Code • Global Connection: (set-connection! conn) • Local Connection: (with-mongo conn (insert! :membros {:name “Poletto"}))
  • 7. Code • Inserts: (insert! :membros {:nome "Poletto", :idade 28}) {:idade 28, :nome "Poletto", :_id #<ObjectId 4ecaf362f7ef6db25f5a2ccd>} (insert! :membros {:nome "Shooter", :idade 21}) {:idade 21, :nome "Shooter", :_id #<ObjectId 4ecaf438f7ef6db25f5a2cce>} (insert! :membros {:nome "Diego", :idade 26}) {:idade 26, :nome "Diego", :_id #<ObjectId 4ecaf59cf7ef6db25f5a2ccf>}
  • 8. Code • Fetch: (fetch :membros) ( :idade 28, :nome "Poletto"} { :idade 21, :nome "Shooter"} { :idade 26, :nome "Diego"})
  • 9. Code • Fetch: (fetch-one :membros :where {:idade {:$lt 25}}) {:idade 21, :nome "Shooter"} (fetch-one :membros :where {:nome "Poletto"}) {:idade 28, :nome "Poletto"} (fetch-count :membros) 3
  • 10. Code • Update: (def m (fetch-one :membros)) #'ldc_congomongo.core/m (update! :membros m (merge m { :lt {:tema "congomongo" } }) {:lt {:tema "congomongo"}, :idade 28, :nome "Poletto"}
  • 11. Code • Destroy: (def m (fetch-one :membros)) #'ldc_congomongo.core/m (destroy! :membros m) #<WriteResult N/A>