nihaogirl 发表于 2018-10-27 15:07:12

MongoDB的基础使用

  一、MongoDB简介
  MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
  MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
  二、MongoDB的下载与安装
  MongoDB的下载地址:http://www.mongodb.org/downloads
  安装:
  安装?不好意思我下的是windows版本的,解压会吧?解压好就可以使用了!
  当时先下的是Windows 32-bit的2.2.*版本,也不知道为什么,就是不能运行,后来换了个1.8.1版本的,跑起来了!(*代表未知,最后以为数字具体多少记不清了……)
  三、MongoDB的开启
  服务器端的开启:
  首先,开启一个cmd窗口,
  然后,cd到mongodb的bin目录下(当然,你也可以通过设置环境变量使mongo命令变为全局的)
  输入如下命令,红色为数据库文件存放路径,此路径必须存在
  mongod -- logappend -- dbpath D:\mongodb\db

  想知道更多开启mongo服务器的命令请在开启前输入:mongod --help
  客户端的开启:
  重新开启一个cmd,同样cd到bin目录下输入命令:mongo
  这样就开启了一个客户端,如下图:

  mongoDB的使用很像关系型数据库,这一点在数据库切换之间就有所体现,我们来看下面的几个命令
  显示该客户端连接到的数据库:show dbs
  使用名为test的数据库:use test
  显示当前数据库中的表:show tables

  四、MongoDB的CURD
  增:
  


[*]> item={"key":"1","text":"ci ao"}
[*]{ "key" : "1", "text" : "ci ao" }
[*]> db.table1.insert(item)
  

  查:
  


[*]> db.table1.find()
[*]{ "_id" : ObjectId("50b5c063ff64a9f7d3bcf27f"), "key" : "1", "text" : "ci ao" }
  

  删:
  


[*]> db.table1.remove({"key":"1"})
[*]> db.table1.find()
[*]{ "_id" : ObjectId("50b5c1ceff64a9f7d3bcf280"), "key" : "2", "text" : "fuck" }
  

  改:
  


[*]> var t = db.table1.findOne({"key":"1"})
[*]> t.str = "next"
[*]next
[*]> db.table1.update({"key":"1"},t)
[*]> db.table1.find()
[*]{ "_id" : ObjectId("50b5c1ceff64a9f7d3bcf280"), "key" : "2", "text" : "fuck" }
[*]{ "_id" : ObjectId("50b5c063ff64a9f7d3bcf27f"), "key" : "1", "text" : "ci ao", "
[*]str" : "next" }
[*]>
  

  以上就是最基本的CURD,但是mongodb远没有这么简单,比如说查询有条件查询,条件查询中还有正则表达式规则查询,还有游标,有索引,有聚合,具体的还是自己去研究吧
  推荐本比较好的书《MongoDB权威指南》,附下载地址:http://down.51cto.com/data/606266


页: [1]
查看完整版本: MongoDB的基础使用