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

  成功运行起来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()

  

时间: 2024-07-31 07:27:01

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

NOSQL Mongo入门学习笔记 - MongoDB的安装(一)

手上的工作不是很忙,所以来学习学习很久就像接触的MongoDb,无奈前段时间工作时间都比较多.记录在这里供以后参考 环境: Centos 7 64位 开始: 1. 在官网下载Mongo : wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.0.3.tgz tar -zxvf mongodb-linux-x86_64-rhel70-3.0.3.tgz  在bin文件下有13个可执行程序. 其中./mongo为命令

Hadoop入门学习笔记---part1

随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力,好好做.正是因为选题和hadoop有关,现在正式开始学习hadoop.将笔记整理于此,希望与志同道合的朋友共同交流. 作者:itRed 邮箱:[email protected] 个人博客链接:http://www.cnblogs.com/itred 好了,废话不多说.进入正题!开始hadoop的学习

Hadoop入门学习笔记---part3

2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hadoop有了一个基础的了解.但是还是有一些理论性的东西需要重复理解,这样才能彻底的记住它们.个人认为重复是记忆之母.精简一下: NameNode:管理集群,并且记录DataNode文件信息: SecondaryNameNode:可以做冷备份,对一定范围内的数据作快照性备份: DataNode:存储数据:

mongo db 学习笔记 之二: mongodb 用户认证

首先要知道mongodb默认安装后是没有任何认证开启的,也就是说,所有能连接到服务器的人都能进数据查看,当然,你可以用防火墙来挡.但没有防火墙的保护,数据库暴露出来是非常危险的. mongodb关于安全分为几个方面,主要是:认证,基于角色的访问控制(授权),审计,加密,部署和环境的安全(涉及到网络跟系统的访问环境). 一 关于认证 使用用户名认证指令为: mongo --port 27017 -u manager -p 12345678 --authenticationDatabase admi

mongo db 学习笔记 之一: mongodb 初认识

官网文章,对比SQL和mongodb http://docs.mongodb.org/manual/reference/sql-comparison/ db --显示当前使用的库 show dbs --显示所有库 use db show collections --显示当前数据库的所有表 db.testData.find() --选择要操作的数据库之后,db代表当前数据库对象,testData代表数据表,在mongo里table叫作collection. find()函数返回所有记录(recor

汇编入门学习笔记 (三) —— 第一个程序

疯狂的暑假学习之  汇编入门学习笔记 (三)-- 第一个程序 参考:<汇编语言> 王爽  第四章 1.一个源程序从写到执行的过程 第一步:编写汇编源程序 第二步:对源程序进行编译连接 第三步:在操作系统中执行 2.源程序 代码: assume cs:first first segment start: mov ax,2 add ax,ax add ax,ax mov ax,4C00H int 21H first ends end start 代码解释: assume .segment.ends

Python 实现 CNKI批量下载 和FireFox Extension 入门学习笔记

?                                 Python 实现 CNKI批量下载 和FireFox Extension 入门学习笔记? 由于需要也是为了督促自己学习新的东西,我原本想要尝试着写一个爬虫程序,能够在cnki上自动得将论文进行批量下载,学习过程中遇到了诸多情况,cnki也真是专业,不得不佩服cnki的强大. 下面进入正题: 学习.实验环境:ubuntu 14.04 工具:Eclipse ,  FireFox, FireBug,HttpFox 编程语言:pyth

汇编入门学习笔记 (十四)—— 直接定址表

疯狂的暑假学习之  汇编入门学习笔记 (十四)-- 直接定址表 参考: <汇编语言> 王爽 第16章 1. 描述单元长度的标号 普通的标号:a,b assume cs:code code segment a:db 1,2,3,4,5,6,7,8 b:dw 0 start: mov si,offset a mov di,offset b mov ah,0 mov cx,8 s: mov al,cs:[si] add cs:[di],ax inc si loop s mov ax,4c00h in

汇编入门学习笔记 (四)—— [BX] 和 loop指令

疯狂的暑假学习之  汇编入门学习笔记 (四)-- [BX]  和 loop指令 参考:<汇编语言> 王爽 第5章 1.[BX] mov al,[1] 在debug中,会把bs:1 中数据赋给al,但在在masm中不会把bs:1 中数据赋给al,而是把 [1] 认为是 1 赋给al. 如果要实现在debug中的mov al,[1],在masm中就需要[bx] 如: mov bx,1 mov al,[bx] 还可以用 bs:[1] 的方式 如: mov al,bs:[1] 2.loop 循环 要使