mongo DB的一般操作
最近接触了一些mongoDB 。将一些指令操作记录下来,便于查询和使用
登录
[root@logs ~]# mongo -u loguser -p log123456 --authenticationDatabase admin
MongoDB shell version: 2.4.10
connecting to: test
> show users
> post = {"title":"My Blog Post","Content":"Here is my blog Post.","Date":new Date()}
{
"title" : "My Blog Post",
"Content" : "Here is my blog Post.",
"Date" : ISODate("2015-02-11T03:12:03.061Z")
}
插入
--插入文档对象
> db.blog.insert(post)
> post = {"title":"Licz Blog Post","Content":"Here is my blog Post.","Date":new Date()}
{
"title" : "Licz Blog Post",
"Content" : "Here is my blog Post.",
"Date" : ISODate("2015-02-11T03:17:07.219Z")
}
> db.blog.insert(post)
读取
--读取集合里一个文档
> db.blog.findOne()
{
"_id" : ObjectId("54dac88dc956bbcbefa8151c"),
"title" : "My Blog Post",
"Content" : "Here is my blog Post.",
"Date" : ISODate("2015-02-11T03:12:03.061Z")
}
--读取限定文档数
> db.blog.find().limit(100);
> db.blog.find().limit(100);
{ "_id" : ObjectId("54dac88dc956bbcbefa8151c"), "title" : "My Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:12:03.061Z") }
{ "_id" : ObjectId("54dac9b8c956bbcbefa8151d"), "title" : "Licz Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:17:07.219Z") }
--读取所有文档数
> db.blog.find()
{ "_id" : ObjectId("54dac88dc956bbcbefa8151c"), "title" : "My Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:12:03.061Z") }
> db.blog.find().limit(100);
{ "_id" : ObjectId("54dac88dc956bbcbefa8151c"), "title" : "My Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:12:03.061Z") }
{ "_id" : ObjectId("54dac9b8c956bbcbefa8151d"), "title" : "Licz Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:17:07.219Z") }
更新
--修改变量post,增加comments键
> post
{ "title" : "You Blog Post", "Date" : ISODate("2015-02-11T03:18:10.509Z") }
> post.comments=[]
[ ]
> db.blog.update({title:"You Blog Post"},post)
> db.blog.find()
{ "_id" : ObjectId("54dac88dc956bbcbefa8151c"), "title" : "My Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:12:03.061Z") }
{ "_id" : ObjectId("54dac9b8c956bbcbefa8151d"), "title" : "Licz Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:17:07.219Z") }
{ "_id" : ObjectId("54dac9f8c956bbcbefa8151e"), "title" : "You Blog
Post", "Date" : ISODate("2015-02-11T03:18:10.509Z"), "comments" : [ ] }
删除
--删除title限定条件的文档
> db.blog.remove({title:"You Blog Post"})
> db.blog.find()
{ "_id" : ObjectId("54dac88dc956bbcbefa8151c"), "title" : "My Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:12:03.061Z") }
{ "_id" : ObjectId("54dac9b8c956bbcbefa8151d"), "title" : "Licz Blog
Post", "Content" : "Here is my blog Post.", "Date" :
ISODate("2015-02-11T03:17:07.219Z") }
>
MongoDB使用技巧
--help帮助命令
> help
db.help() help on db methods
db.mycoll.help() help on collection methods
sh.help() sharding helpers
rs.help() replica set helpers
help admin administrative help
help connect connecting to a db help
help keys key shortcuts
help misc misc things to know
help mr mapreduce
show dbs show database names
show collections show collections in current database
show users show users in current database
show profile show most recent system.profile entries with time >= 1ms
show logs show the accessible logger names
show log [name] prints out the last segment of log in memory, 'global' is default
use <db_name> set current database
db.foo.find() list objects in collection foo
db.foo.find( { a : 1 } ) list objects in foo where a == 1
it result of the last line evaluated; use to further iterate
DBQuery.shellBatchSize = x set default number of items to display on shell
exit quit the mongo shell
--特殊集合名处理
如果集合名恰好是和数据库类的一个属性名相同,可以使用db.getCollection进行访问
> db.version
function (){
return this.serverBuildInfo().version;
}
> db.getCollection("version")
test.version
mongo DB的一般操作的更多相关文章
- Mongo DB Java操作
1.首先下载Mongo DB java 驱动 2.操作Mongo 增删改查 package com.sjjy.mongo; import java.util.ArrayList;import java ...
- 文件存储Mongo DB后前端对于文件操作的处理方式
以下是关于后端对于附件从存储服务器改为存储到Mongo DB后,前端对于一些常见需求处理方式的修改:包括文件上传下载和富文本编辑中的贴图实现. 一.文件上传(记录关于fetch中post请求Conte ...
- Mongo DB 2.6 需要知道的一些自身限定
在现实的世界中,任何事情都有两面性,在程序的世界中,亦然! 我们不论是在使用一门新的语言,还是一门新的技术,在了解它有多么的让人兴奋,让人轻松,多么的优秀之余,还是很有必要了解一些他的局限性,方便你在 ...
- mongo db 使用方法
1 下载 mogodb http://www.mongodb.org/display/DOCS/Downloads 2 打开服务 我安装在e盘下了 可以指定数据文件位置 到 E:\mongoDB\mo ...
- Java从入门到精通——数据库篇Mongo DB 导出,导入,备份
一.概述 本篇博客为大家讲述一下Mongo DB是如何导入导出数据,还有就是备份数据的. 在下面操作的时候需要把Mongo DB的服务端打开才能操作. 二.导出. MongoDB的导 ...
- mongo db 使用方法[转]
1 下载 mogodb http://www.mongodb.org/display/DOCS/Downloads 2 打开服务 我安装在e盘下了 可以指定数据文件位置 到 E:\mongoDB\mo ...
- Mongo db 简单介绍及命令笔记
首先来了解下什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为W ...
- C# Mongo DB 修改多层嵌套集合中的字段
C# Mongo DB 修改嵌套集合中的字段 虽然c#的mongo 驱动很强大,而且还支持linq,但是一些复杂的操作语句还是比较困难 这里我用Bson实现功能 这是模型(我这里有多层嵌套) publ ...
- mongo DB for C#
(1)Download the MongoDB C#驱动. http://www.nuget.org/packages/mongocsharpdriver/. (2) Add Reference to ...
随机推荐
- “英雄之旅”见闻和小结----angular2系列(三)
前言: 本系列在前面两篇文章,介绍了Zone.js和angular2的基础概念.而后对于ng2的学习,还是由官方的 Tour of Heroes 开始. 以下内容经过提炼和个人理解,当然也会有不正确的 ...
- CSS3实现圆形进度条
介绍 闲来无事,去了CSS3Plus网站逛了逛,发现了一个很有意思的实现--css3实现进度条.粗略看了下代码,发现原理其实很简单,不难理解. 现在在此讲述下原理并实现一个1s更新的进度条. 技术细节 ...
- Hibernate之加载策略(延迟加载与即时加载)和抓取策略(fetch)
假设现在有Book和Category两张表,表的关系为双向的一对多,表结构如下: 假设现在我想查询id为2的那本书的书名,使用session.get(...)方法: Session session=H ...
- PostgreSql+PostGIS和uDig的安装
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 总体来说,这两款开源软件均是很好安装的,一般按照提示一步一步 ...
- JAVA中关于锁机制
本文转自 http://blog.csdn.net/yangzhijun_cau/article/details/6432216 一段synchronized的代码被一个线程执行之前,他要先拿到执行这 ...
- Java中读文件操作
InputStream & Reader InputStream(字节流),如下是InputStream的层次结构: AudioInputStream:音频输入流类,该方法可以: 从外部音频文 ...
- ajax调用本地wcf中的post和get
我们可以通过jQuery调用本地或者远程的wcf服务,本文讲解的是对本地wcf服务的post和get调用方式. post和get到底有什么区别呢?此处不作详述. 但是,post对请求的数据格式更为严格 ...
- javascript设计模式实践之职责链--具有百叶窗切换图片效果的JQuery插件(三)
在上一篇<javascript设计模式实践之模板方法--具有百叶窗切换图片效果的JQuery插件(二)>里,通过采用模板方法模式完成了切换效果对象的构建编写. 接下来就是完成各效果对象的调 ...
- 从Insider计划看Win10的发展
Windows 10 Insider计划是微软为了更好的倾听用户的需求而推出的用户测试项目,参与该项目的 Insider可以免费使用Windows 10 预览版.同时这些用户还需要对 Windows ...
- NetCore 阿里大于发送短信
使用阿里大于API发送短信,但阿里没有提供NetCore 的API,自己看了下源码重写了发短信这个部分 public class MessageSender { private readonly st ...