码迷,mamicode.com
首页 > 数据库 > 详细

NOSQL Mongo入门学习笔记 - 数据的基本插入(二)

时间:2015-06-03 19:16:22      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

  成功运行起来mongo之后,进入了命令行模式,mongo默认会选择test数据库

 

1. 使用db命令打印出来当前选定的数据库: 

  > db

  test

  

2. 使用show dbs 命令可以打印出数据库列表

  > show dbs

  local 0.078GB

3. 使用use [dbname] 可以切换数据库

  > use local

  switched to db local

 

  试着使用db命令打印一下确认是不是在local数据库:

  > db

  local

  使用use 命令的时候 即使是use [anydb] 也可以切换数据库,即便这样,只要没有向库内插入数据,该数据库是不会创建的。可以使用show dbs查看哦 

4. 直到现在我仍在是在探寻安装使用问题,没有向数据库中写入任何数据,接下来,慢慢揭开它的面纱。

  mongo没有数据表,这个称之为集合,一组数据即使一个集合. 集合不需要显示的创建。官方说使用的是 dynamic schemas ,也不需要插入数据之前定义 文档的结构。

  切换一个新的数据库

    use mydb

  创建两个已j和k命令的文档:

    j = {name : "test"}

    k = {x:3}

  插入到集合中

    db.test.insert(j)

    db.test.insert(k)

  注意到第二次执行明显比第一次要快得多,因为第一次插入的时候会对数据库与集合进行初始化。

  插入第一个文档的时候,mongo会同时创建mydb数据库和test集合。

  

  验证一下集合是存在的

    > show collections

    system.indexes

    test

  所有的数据库都会包含一个system.indexes集合

3. 循环遍历数据

  在mongo shell下可以使用循环来遍历数据

    var c = db.test.find()  //得到游标

    while( c.hasNext() ) printjson( c.next())  //打印数据

  这样会把集合内数据打印出来,但是注意的是,mongo默认的只显示20条数据

  在获取数据之后可以输入it可以获取以下20条数据

 

  在得到c对象的时候,也可以使用下标来对数据进行读取

    printjson( c[2] )

 

  find()不仅仅可以用来获取集合对象,也可以进行类似sql select 的查找

    > db.test.find({x:3})

    { "_id" : ObjectId("556ec46ee82c862a1abf7913"), "x" : 3 }

  使用limit()限制查询数量

    > db.test.find().limit(3)  //返回三条集合

    > db.test.find({x:3}).limit(3)  //返回三条符合条件的集合数据  

4. 在mongo脚本中可以使用javascript脚本循环到集合中

    > for(var i =1; i<= 10; i++) db.test.insert({x:i})

  使用find()查看

    > db.test.find()

 

  

NOSQL Mongo入门学习笔记 - 数据的基本插入(二)

标签:

原文地址:http://www.cnblogs.com/hump/p/4549805.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!