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管理工具,在下一篇博文中,我将给大家详细介绍。敬请关注,谢谢~