2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查
一、开篇
传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由数据库(database)、集合(collection)、文档对象(document)三个层次组成。MongoDB对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。
在上一篇博文中,我们介绍了如何安装和配置MongoDB。同时,还将其制作成了Windows服务,方便使用。那么,本文我们将通过实际操作来继续介绍MongoDB。
二、开启服务
在上篇博文中,我们已经在自己的系统上安装了MongoDB服务。开启服务有两种方法,可以直接用shell命令;也可以在Windows服务窗口中找到对应的服务启动。
- 使用命令行启动服务
在cmd界面输入:net start "MongoDB" // 启动服务
如果要停止服务,也可以输入命令:
net stop "MongoDB" // 停止服务

- 使用服务窗口界面启动服务
右击“计算机”--“管理”,然后点击左边下拉框中的“服务”。在右边的详情中找到“MongoDB”的服务。右击,点击“启动”(或“停止”)。
三、使用mongo.exe 执行数据库增删改查操作
在之前的安装路径D:/MongoDB/bin下找到mongo.exe。双击运行exe程序:
表示当前使用的数据库连接是test数据库,这是默认将要创建的。为什么说是“将要创建的”呢?因为此时并不存在此数据库,或者说它现在还只在内存中,并没有创建在物理磁盘上。只有当你执行了插入数据的命令后,该数据库才会真正的创建。
在shell界面输入命令行:
use cnblogs //表示使用之前创建的数据库
然后使用插入数据的命令行:
db.users.insert({'name':'Julian','age':24},{'name':'Jiang','age':20}) // 键值对的形式,尝试添加两条记录。
但是发现数据只插入了一条。如果要插入两条记录则要写成:
db.users.insert({'name':'Julian','age':24})
db.users.insert({'name':'Jiang','age':20})
这里的users是临时创建的集合,类似数据库中的表名。如果要查看里面现有的记录可以用以下命令行:
db.users.find()

当然,实际情况下,我们会使用到多个集合。所以我们有插入一个class集合:
db.class.insert({'classID':'ClassOne','className':'ClassNameOne'})
然后用以下命令行查看当前数据库中包含的集合:
show dbs // 查看数据库列表
show collections // 查看集合列表

前面介绍了如何插入和查看记录,接下来就一起来介绍修改,删除的命令行:
db.users.update({'name':'Julian'},{'$set':{'age':10}},upsert=true,multi=false)
上面的参数具体表示:
第一:查询的条件
第二:更新的字段
第三:如果不存在则插入
第四:是否允许修改多条记录

至于删除记录,命令行如下:
db.users.remove({'name':'Jiang'}) //参数为:要删除的条件

如果要删除所有记录
db.users.remove()
删除collection集合
db.users.drop()
删除当前数据库
db.dropDatabase()

好了,基本的增删改查就介绍完了,还有些复杂的语句这边就先不介绍了。可以看MongoDB官网的帮助文档,http://docs.mongodb.org/manual/reference/sql-comparison/
大家有没有发现,使用mongo.exe虽然能实现功能,但是操作太过于麻烦,非常的不方便。那么,MongoDB有没有好用的数据库管理工具呢?答案当然是肯定的。这里,我们介绍一款比较常用的管理工具:MongoVUE。
四、MongoDB可视化数据库管理工具MongoVUE
下载地址:http://www.mongovue.com/downloads/
点击下载链接,下载安装最新版软件到本地就可以了。安装操作比较简单,这边就不介绍了。MongoVUE是一款免费试用15天,然后收费的产品,如果想要破解版或者找破解教程的朋友,可以自行问度娘问谷哥,这边就不扩展了。(PS:真的有需求的朋友,可以留言或私信给我)
具体如何来使用MongoVUE管理工具,在下一篇博文中,我将给大家详细介绍。敬请关注,谢谢~
2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查的更多相关文章
- MongoDB基础入门002--基本操作,增删改查
一.这里只是演示最基本的操作,更多的信息可以去官网.https://docs.mongodb.com/manual 打开一个cmd,输入mongo命令打开shell,其实这个shell就是mongod ...
- Django-Model操作数据库(增删改查、连表结构)
一.数据库操作 1.创建model表 基本结构 1 2 3 4 5 6 from django.db import models class userinfo(models.M ...
- MongoDB学习day04--NodeJs操作数据库增删改查
一.在Nodejs中使用Mongodb Nodejs需要引入的包 npm install mongodb --save -dev 或者使用镜像 cnpm install mongodb --save ...
- phpcms 操作数据库 增删改查
数据库的其他类继承的都是libs/class/model.class.php 这里面有写好的操作数据库的常用方法 1.增 insert($data, $return_insert_id = false ...
- java操作数据库增删改查的小工具1--TxQueryRunner
在java程序中,一般使用jdbc连接数据库,比较麻烦,在看传智教程时学了一个工具类,用于简化与数据库之间的操作步骤,就是TxQueryRunner,他是QueryRunner的子类,用起来和他是一样 ...
- JavaWeb学习记录(七)——MVC操作数据库增删改查与分页功能
一.分页工具类 package blank.util;import java.util.List; import org.springframework.jdbc.core.JdbcTemplate; ...
- java操作数据库增删改查的小工具2--TxQueryRunner
当涉及到多表查询时,如数据库中有两张表分别为t_person和t_address,表结构如下: 其中t_person的外键为t-address的主键aid, 新建两个javaBean类,Person ...
- 前端web通过flask操作数据库-增删改查
后端python代码: #coding:utf8 from flask import Flask,request,render_template import pymysql as mysql imp ...
- python操作mysql数据库增删改查的dbutils实例
python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...
随机推荐
- 上线踩坑引发的处理方式---lsof,strace
两个跟踪进程的linux命令 lsof -p pidstrace -p pid快速跟踪进程出现问题的地方.由于进程本身运行良好,但是内部一直等待第三方哪个应答,导致进程假死.引用自:http://li ...
- Android--Content Provider
1.内容提供器(Content Provider)主要用于在不同的应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序中的数据,同时还能保证被访数据的安全性. 2.内容提 ...
- Oracle Ebs R12 SLA与GL关系变化
http://www.cnblogs.com/bruce_zhao/p/3809886.html Oracle Ebs R12 SLA与GL关系变化 SLA概念:SLA(Subledger Accou ...
- Zabbix3.0 自动电话报障
第一种:Pagerduty 网站:www.pagerduty.com 优点:老牌服务商,稳定 缺点:贵,英文,网站要FQ 价格参考(34美元每月才25个电话,*29每月是包年才有的价格) 安装方式: ...
- 利用Formdata实现form提交文件上传不跳转页面
作者:幻月九十链接:https://www.zhihu.com/question/19631256/answer/119911045来源:知乎著作权归作者所有,转载请联系作者获得授权. $('form ...
- innodb_ft_max_token_size取值范围
根据问档中所说,innodb_ft_max_token_size取值范围为10-252,而实际上但我们在配置文件设置innodb_ft_max_token_size=252时,error log会出现 ...
- libevent (二) 接收TCP连接
libevent 接收TCP连接 Evconnlistener 机制为您提供了侦听和接受传入的 TCP 连接的方法.下面的函数全部包含在`<event2/listener.h>`中. ev ...
- 运用JMX监控Tomcat/Java jvisualvm简要说明
公司线上项目出现了java heap space 然后经过查询知晓了下面工具于是开始了尝试. visualvm能干什么:监控内存泄露,跟踪垃圾回收,执行时内存.cpu分析,线程分析... jvisua ...
- HandlerMapping 详解
HandlerMapping 详解 1. 导言 万丈高楼平地起,SpringMVC的辉煌离不开每个组件的相互协作,上一章详细阐述了SpringMVC整个体系结构及实现原理,知道HandlerMappi ...
- python find函数
Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1 ...