一、开篇

  传统的关系数据库一般由数据库(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操作数据库增删改查的更多相关文章

  1. MongoDB基础入门002--基本操作,增删改查

    一.这里只是演示最基本的操作,更多的信息可以去官网.https://docs.mongodb.com/manual 打开一个cmd,输入mongo命令打开shell,其实这个shell就是mongod ...

  2. Django-Model操作数据库(增删改查、连表结构)

    一.数据库操作 1.创建model表         基本结构 1 2 3 4 5 6 from django.db import models     class userinfo(models.M ...

  3. MongoDB学习day04--NodeJs操作数据库增删改查

    一.在Nodejs中使用Mongodb Nodejs需要引入的包 npm install mongodb --save -dev 或者使用镜像 cnpm install mongodb --save ...

  4. phpcms 操作数据库 增删改查

    数据库的其他类继承的都是libs/class/model.class.php 这里面有写好的操作数据库的常用方法 1.增 insert($data, $return_insert_id = false ...

  5. java操作数据库增删改查的小工具1--TxQueryRunner

    在java程序中,一般使用jdbc连接数据库,比较麻烦,在看传智教程时学了一个工具类,用于简化与数据库之间的操作步骤,就是TxQueryRunner,他是QueryRunner的子类,用起来和他是一样 ...

  6. JavaWeb学习记录(七)——MVC操作数据库增删改查与分页功能

    一.分页工具类 package blank.util;import java.util.List; import org.springframework.jdbc.core.JdbcTemplate; ...

  7. java操作数据库增删改查的小工具2--TxQueryRunner

    当涉及到多表查询时,如数据库中有两张表分别为t_person和t_address,表结构如下: 其中t_person的外键为t-address的主键aid, 新建两个javaBean类,Person ...

  8. 前端web通过flask操作数据库-增删改查

    后端python代码: #coding:utf8 from flask import Flask,request,render_template import pymysql as mysql imp ...

  9. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

随机推荐

  1. Ajax无刷新分页

    前台代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AjaxPage ...

  2. 安卓系统上安装.net运行时 mono runtime

    感谢以下博主: ubuntu指南 http://dawndiy.com/archives/229/ img大小调整 http://zebinj.blog.163.com/blog/static/206 ...

  3. QlikView ETL - 分隔字符串的方法 SubField

    开篇介绍 今天在使用 QV 加载数据的时候会碰到列中的一些状态,信息是通过:或者 / 等符号分隔的,这样不利于做数据分析,因为字符串中的内容本身就是维度.上网搜了一下找到了解决的方法,记录一下. 比如 ...

  4. 创建一个简单的HTTP服务(自动查找未使用的端口)

    var t = new Thread(new ThreadStart(() => { HttpListener listener = new HttpListener(); var prefix ...

  5. os.popen(command)

    command="/usr/local/sbin/xxx_cmd" os.popen(command) xxx_cmd是自己编译的二进制文件,如果不加上全路径/usr/local/ ...

  6. Lingo 做线性规划 - Revenue Management

    Reference: <An Introduction to Management Science Quantitative Approaches to Decision Making, Rev ...

  7. 标签简化Spring-MVC配置

    新填入@RequestMapping标签 和@org.springframework.stereotype.Controller标签 这样做就是通过标签来简化之前,对HandlerMapping的配置 ...

  8. 在Debian下安装LAMP

    准备工作: 1 sudo apt-get install build-essential 第一步:安装Apache 1 sudo apt-get install apache2 第二步:安装MySQL ...

  9. JavaScript-分支语句与函数

    一.分支语句-if语句 四种if语句: 1.if(判断条件) { 满足条件时需执行的语句 } 2.if(判断条件) { 满足条件时需执行的语句 } else { 不满足条件时需执行的语句 } 3.if ...

  10. 一些新的web性能优化技术

    1.IconFont:图标字体,这是近年来新流行的一种以字体代替图片的技术.它可以适应任何分辨率而不会出现图片模糊问题,与图片相比它具有更小的容量,更高的灵活性(像字体一样可以设置图标大小.颜色.透明 ...