`

MongDb数据库的简单使用

阅读更多

在2011年毕业刚参加工作那会儿,和我一起租房的大学同学的公司就是用MongDb数据库,一直听他说MongDb很牛叉,今天就在本机装上玩玩看。

MongoDB数据库的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:

* 面向集合存储,易存储对象类型的数据。
* 模式自由。
* 支持动态查询。
* 支持完全索引,包含内部对象。
* 支持查询。
* 支持复制和故障恢复。
* 使用高效的二进制数据存储,包括大型对象(如视频等)。
* 自动处理碎片,以支持云计算层次的扩展性
* 支持RUBY,PYTHON,JAVA,C++,PHP等多种语言。
* 文件存储格式为BSON(一种JSON的扩展)
* 可通过网络访问

下载地址:http://www.mongodb.org/downloads

安装很简单随便在网上找个技术博客照抄就行,数据库redis和MongDb都是非关系型数据库(NoSql)和本机的mysql的安装使用是不冲突的。

1.启动MongDb服务(cmd窗口==》快捷键:windows+r):

C:\Users\chb>e:

E:\>cd MongDb

E:\MongDb>cd bin

E:\MongDb\bin>mongo.exe

MongoDB shell version: 2.6.5

connecting to: test

Welcome to the MongoDB shell.

For interactive help, type "help".

For more comprehensive documentation, see

        http://docs.mongodb.org/

Questions? Try the support group

        http://groups.google.com/group/mongodb-user

>

> show dbs  // 显示所有数据库,==》show databases;

admin  (empty)

local  0.078GB

> use local   // 选中数据库

switched to db local

> show tables;  // 显示该数据库下的所有表(自创的命令)

startup_log

system.indexes

users

> db.users.save({"name":"lecaf"})  // 向表users添加一条name=lecaf的记录,users表不存在MongDb自动创建

WriteResult({ "nInserted" : 1 })  // 添加成功后的提示

> db.users.insert({"name":"chenhaibo","age":"26"})

WriteResult({ "nInserted" : 1 })

> db.users.insert({"name":"chenhaibo0806","age":"27"})

WriteResult({ "nInserted" : 1 })

> db.users.find()  // 查找所有记录

{ "_id" : ObjectId("5444b602b0a75fa95741d1dc"), "name" : "lecaf" }

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

> db.users.findOne()  // 查找一条记录(默认最先那条)

{ "_id" : ObjectId("5444b602b0a75fa95741d1dc"), "name" : "lecaf" }

> db.users.findone()  // MongDb的命令区分大小写的

2014-10-20T15:17:59.835+0800 TypeError: Property 'findone' of object local.users

 is not a function

>

> db.users.update({"name":"lecaf"},{"age":"10"})  // 更新记录,前面name是条件,后面age是数据

WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

> db.users.find()

{ "_id" : ObjectId("5444b602b0a75fa95741d1dc"), "age" : "10" }

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

> db.users.find().limit(2)  // 查找两条记录

{ "_id" : ObjectId("5444b602b0a75fa95741d1dc"), "age" : "10" }

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

> db.users.find().count(true)   //统计条数

3

 

> db.users.find({"name":"chenhaibo"})  // 按条件查找

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

>

 

> db.users.find({"age" : {$gt: "25"} })  // 查找年龄大于25岁的,个人觉得 命令之间需要空格。。

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

 

> db.users.find({"name" : /^chenhaibo.*/i })  // 模糊查询,查询以“chenhaibo”为开头的,i是不区分行的

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

> db.users.find({"name" : /^chenhaibo0806.*/i })

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

 

> db.users.find().sort({ "name" : -1 })  // -1降序,1升序

{ "_id" : ObjectId("5444b66fb0a75fa95741d1de"), "name" : "chenhaibo0806", "age"

: "27" }

{ "_id" : ObjectId("5444b63cb0a75fa95741d1dd"), "name" : "chenhaibo", "age" : "2

6" }

{ "_id" : ObjectId("5444b602b0a75fa95741d1dc"), "age" : "10" }

>

 

> it   // it 去查看更多记录

{ "_id" : ObjectId("54474015b0a75fa95741d1f4"), "age" : "41" }

{ "_id" : ObjectId("54474018b0a75fa95741d1f5"), "age" : "42" }

{ "_id" : ObjectId("5447401bb0a75fa95741d1f6"), "age" : "43" }

{ "_id" : ObjectId("5447401db0a75fa95741d1f7"), "age" : "44" }

{ "_id" : ObjectId("5447401fb0a75fa95741d1f8"), "age" : "45" }

{ "_id" : ObjectId("54474023b0a75fa95741d1f9"), "age" : "46" }

{ "_id" : ObjectId("54474025b0a75fa95741d1fa"), "age" : "47" }

// 总结:个人觉得MongDb很方便,不需要像Mysql那样麻烦建表字段的,拓展性灵活性较强。

未完待续***********

3
2
分享到:
评论

相关推荐

    mongdb数据库

    mongdb数据库安装与简单使用

    nodejs+mongodb实现简单的上传文件页面

    用nodejs建立了简单的页面,并且连接mongdb数据库,可以实现简单的页面

    nodeCases.rar

    一个适用于学习了解nodejs+mongdb数据库的简单的一个学生信息管理案例。

    mongdb文件型数据库开发实例

     MongoDB的安装的Windows,Ubuntu的或Mac OS X的安装很简单,基本上只是MongoDB的zip文件下载,额外的,并运行命令- MongoDB-  folder/bin/mongod元。  使用的mongod启动MongoDB的。 $./mongod Tue Sep ...

    springmvc配置mongodb数据库Demo

    简单的mongodb数据库配置,启动mongodb数据库后导入项目可直接运行

    网上商城前台后台+angular-springboot-mongdb-thmeleaf-highcharts

    自己做的网上商城,有帮助记得好评哈,数据库是mongodb数据库。 适用于学习Mongodb数据库的同学,...localhost:8080/ 访问后台,管理员登录, localhost:8080/shop访问 前台 做了简易的 购物页面,只做了购物车功能。

    python_crawler:它被设计为使用json和sqlite而不是mysql或mongdb的简单,小巧,实用的python搜寻器。 目的地网站是Zhihu.com

    设计之初就尽量避免避免额外的框架和数据库引擎,因此它是一个python原生爬虫,数据库采用的是最轻便的sqlLite。所有的定制信息都从config文件导入,修改它可以实现定制功能。效果展示前端展示数据库展示首要条件为...

    MongoDB_Golang.zip

    2. 适合MongoDB初学者:降低学习成本,底层实现对使用者透明,操作简单,提升开发效率 3. 适合从RDB(关系型数据库)刚转用MongoDB的使用者:此封装照顾了 MySQL等RDB使用者的用户习惯,返回的数据格式和ORM(关系...

    MongoDB入门的一些资料

    之前为了了解mongodb数据库,网上搜集的一些资料,可作为简单了解或者入门使用。 比较简单的MongoDB入门资料,包含一个PPT,一个txt,一个word代码段。

    java操作mongoDB数据库的简单实例-附件资源

    java操作mongoDB数据库的简单实例-附件资源

    MongoDB开发使用手册

    MongoDB开发使用手册 1 一.基础部分 1 MongDB简介 1 Mongdb的安装和配置 8 简单的数据操作 13 常用工具集 16 推荐客户端工具 16 二.mongoDB应用开发 18 MongoDB机制 18 设计mongodb数据库 19 高级数据库操作 27 ...

    docker中使用mongodb数据库详解(在局域网访问)

    有了docker,基本上就告别了各种软件、数据库的安装,直接从镜像库pull下来,爽,想想以前那真是一个遭罪啊。 这文章就来看一下如何跑mongo的docker镜像,并且可以在局域网访问,内容相对简单,也是记录我的自学过程...

    使用Selenium对Boss直聘网站进行爬虫,将招聘信息存入MongoDB,并对岗位要求分词生成词云。

    使用selenium对Boss直聘进行爬虫,将工作信息(岗位头衔、薪资、地点、经验要求、学历要求、公司名称、所属行业、融资情况、人员规模、岗位详情)使用MongoDB存储到本地数据库中 筛选符合要求的工作,保存对应的岗位...

    Studio 3T for Mongodb

    一款管理Mongdb的可视化工具,下载后轻松连接,操作简单实用。

    Node.js连接MongoDB数据库产生的问题

    今天,我就以一个简单的例子介绍一下(在本地新建数据库文件并将其内容显示到浏览器窗体); 1.准备部分:所需要的工具IDE为WebStorm,MongoDB,Node.js。 1)首先需要下下载MongoDB并且配置环境变量(Path 指向安装...

    MongoDB的常规备份策略

    不用多做解释,几乎对任何数据库都有用,简单粗暴。但像多数数据库一样,这个操作必须在mongod实例停止的情况下进行才能保证你得到的是正确状态下的数据库。否则在备份过程中如果有写操作,可能造成备份到的库处于非...

    Python-Flask-MongoDB:python-flask+mongodb实现的简单的restful api

    Python-Flask-MongoDB python-flask+mongodb实现的简单的restful api

    SAXMongoDBMorphiaJava

    该程序所做的是使用 SAX 处理 XML 文档,将我们感兴趣的数据保存在 MongoDB(NoSQL 数据库,面向用 C++ 编写的 JSON 类型文档)中。 为此,它使用 Morphia(由 Google 开发的 Java 库),它将 Java 对象转换为 ...

    Difeye 1.1.5.rar

    使其支持读写分离、支持Smarty模板、支持页面和动作代码分离、支持nosql类的mongdb。 主要特点有: ◆数据库连接做自动主从读写分离配置,适合单机和分布式站点部署; ◆支持Smarty模板机制,可灵活配置第三...

    Difeye-敏捷的轻量级PHP框架 v1.1.5.zip

    使其支持读写分离、支持Smarty模板、支持页面和动作代码分离、支持nosql类的mongdb,主要特点有: ◆数据库连接做自动主从读写分离配置,适合单机和分布式站点部署; ◆支持Smarty模板机制,可灵活配置第三方...

Global site tag (gtag.js) - Google Analytics