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里面的字典不能用单引 ...
随机推荐
- 利用Formdata实现form提交文件上传不跳转页面
作者:幻月九十链接:https://www.zhihu.com/question/19631256/answer/119911045来源:知乎著作权归作者所有,转载请联系作者获得授权. $('form ...
- mssql的日期函数,如何取得当前年月日,当前时间,当前月份,当前天数,一年中第几天?
mssql函数DATENAME 语法 DATENAME ( datepart , date ) 参数 datepart 是返回的 date 的一部分.下表列出了所有有效的 datepart 参数.用户 ...
- 深入理解java虚拟机【Java虚拟机类生命周期】
C/C++等纯编译语言从源码到最终执行一般要经历:编译.连接和运行三个阶段,连接是在编译期间完成,而java在编译期间仅仅是将源码编译为Java虚拟机可以识别的字节码Class类文件,Java虚拟机对 ...
- 无线客户端框架设计(3):基类的设计(iOS篇)
本文代码:YoungHeart-Chapter-03.zip 没有基类的App都不是好App. 因为iOS使用的是mvc模式的开发模式,所以,业务逻辑基本都在每个页面相应的ViewController ...
- paip java.net.SocketException No buffer space available的解决办法及总结
java.net.SocketException No buffer space available的解决办法及总结 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来 ...
- MyEclipse使用总结——设置MyEclipse使用的Tomcat服务器 设置JDK
一.设置使用的Tomcat服务器 如果不想使用MyEclipse自带的tomcat服务器版本,那么可以在MyEclipse中设置我们自己安装好的tomcat服务器 设置步骤如下: Window→Pre ...
- Java 线程 — synchronized、volatile、锁
线程同步基础 synchronized 和volatile是Java线程同步的基础. synchronized 将临界区的内容上锁,同一时刻只有一个进程能访问该临界区代码 使用的是内置锁,锁一个时刻只 ...
- javaweb回顾第二篇tomcat和web程序部署
前言这篇主要说下关于tomcat中一些属性和web程序的简单部署,可能在实际开发有更好的部署方式,但是这也是一个基础. 1:tomcat 关于tomcat估计只要接触java的人都听过这个名字,那我们 ...
- JQ属性和css部分测试
1.attr(name|properties|key,value|fn) 设置或返回被选元素的属性值. <div class="attr">设置或返回被选元素的属性值 ...
- Windows下提升进程权限
windows的每个用户登录系统后,系统会产生一个访问令牌(access token) ,其中关联了当前用户的权限信息,用户登录后创建的每一个进程都含有用户access token的拷贝,当进程试图执 ...