mongdb 学习
一:安装
1.首先到官网(http://www.mongodb.org/downloads )下载合适的安装包
2.安装mongodb
3. cmd 命令切换到安装目录bin 下面
mongod --dbpath D:\MongoDB\data
这是命令行窗口会打印一些启动信息,最后一行显示为如下信息时表示启动成功了
这是在浏览器输入http://localhost:27017/可以看到显示信息为
It looks like you are trying to access MongoDB over HTTP on the native driver port.
4.创建文件 mongod.cfg ,内容如下:
systemLog:
destination: file
path: c:\data\log\mongod.log
storage:
dbPath: c:\data\db
5. mongod --config "C:\mongodb\mongod.cfg" --install
6.开启,关闭,移除服务
net start MongoDB
net stop MongoDB
"D:\MongoDB\data" --remove
二:基本操作
再开一个cmd,输入mongo命令打开shell,其实这个shell就是mongodb的客户端,
同时也是一个js的编译器,默认连接的是“test”数据库。
<1>insert 增:
> db.person.insert({"name":"ken","age":"23"})
WriteResult({ "nInserted" : 1 })
> db.person.insert({"name":"jack","age":"20"})
WriteResult({ "nInserted" : 1 })
<2>find 查:
2.1等于条件
> db.person.find({"name":"ken"})
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "23" }
> db.person.find()
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "23" }
{ "_id" : ObjectId("571ed118643f3e87212a7c21"), "name" : "jack", "age" : "30" }
① “_id": 这个字段是数据库默认给我们加的GUID,目的就是保证数据的唯一性。
2.2 IN
> db.kehu.find({shop_name:{$in: ['总部','主站']}})
{ "_id" : ObjectId("571ee1c1e77ed0fd0ee9eb35"), "shop_name" : "总部", "code" : "000" }
{ "_id" : ObjectId("571ee1c2e77ed0fd0ee9eb36"), "shop_name" : "主站", "code" : "OS001" }
2.3 字段值大于 ($gt) 或 字段小于 ($lt)
> db.kehu.find({ $and: [ {code:{ $gt: '180' }}, {code:{ $lt: '200' }}] })
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ecde"), "shop_name" : "时尚旗舰店", "code" : "181" }
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ece2"), "shop_name" : "Pattys way", "code" : "182" }
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ece3"), "shop_name" : "ROSA", "code" : "183" }
2.4 两个字段匹配
> db.kehu.find({code:'181', $and: [ {code:{ $gt: '180' }}, {code:{ $lt: '200' }}] })
{ "_id" : ObjectId("571ee1c4e77ed0fd0ee9ecde"), "shop_name" : "时尚旗舰店", "code" : "181" }
查询表中所有数据:db.表名.find();
按条件查询(支持多条件):db.表名.find(条件);
查询第一条(支持条件):db.表名.findOne(条件);
限制数量:db.表名.find().limit(数量);
跳过指定数量:db.表名.find().skip(数量);
比较查询
大于:$gt
小于:$lt
大于等于:$gte
小于等于:$lte
非等于:$ne
或者:$or
in和not in查询(包含、不包含)
$in
$nin
查询数量:db.表名.find().count();
排序:db.表名.find().sort({"字段名":1});
1:表示升序 -1:表示降序
指定字段返回: db.表名.find({},{"字段名":0});
1:返回 0:不返回
存储过程
创建存储过程:
db.system.js.save({_id:"存储过程ID",
value:function(参数){
-- 逻辑主体;
return 返回;
}});
调用存储过程
db.eval("存储过程ID()");
所有存储过程都存放在db.system.js中
<3>update 改:
update方法的第一个参数为“查找的条件”,第二个参数为“更新的值”
> db.person.update({"name":"ken"},{"name":"ken","age":"28"})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.person.find({"name":"ken"})
{ "_id" : ObjectId("571ed103643f3e87212a7c20"), "name" : "ken", "age" : "28" }
<4>remove 删:
删除其中1条
> db.person.remove({"name":"ken"})
WriteResult({ "nRemoved" : 1 })
> db.person.find()
{ "_id" : ObjectId("571ed118643f3e87212a7c21"), "name" : "jack", "age" : "30" }
删除全部
> db.person.remove({})
WriteResult({ "nRemoved" : 1 })
> db.person.find()
>
drop对象
> db.person.drop()
true
> db.person.find()
>
mongdb 学习的更多相关文章
- mongdb学习
1.启动mongdb 服务(注启动之前把data 文件夹清空) 2.开发和jpa一样 只是extendMongoRepository 3.实体类只有id注解,属性全为String
- mongdb学习笔记
1.MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的 2.支持动态查询 3.使用高效的二进制数据存储,包括大型对象(如视频等) 4.文件存储格 ...
- mongodb学习(1) 第一次开启 mongdb
1.启动mongdb 可以设置为开机启动 mongod -dbpath=/data/mongodb --fork --port 27017 --logpath=/usr/local/mongodb/l ...
- mongDB数据库 小白学习
一 安装配置 1.配置文件mongod.cfg (路径:D:\data\config\mongod.cfg) 如下: systemLog: destination: file path: D:\da ...
- nodejs+nginx+mongdb+redis安装学习笔记(之nodejs安装)
基础环境 本文安装示例使用ubuntu-14.10-server 64位 操作系统,并没有在其他系统中测试 第一步:安装Nodejs 1.通过apt-get install 安装 (1)下载安装deb ...
- Mongodb数据库学习系列————(一)Mongodb数据库主从复制的搭建
Mongodb数据库主从复制的搭建 Writeby:lipeng date:2014-10-22 最近项目上用到了位置查询,在网上 ...
- MongoDB学习笔记—权限管理
1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...
- MongoDB学习笔记—Linux下搭建MongoDB环境
1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...
- solr+mongo-connector+mongdb+tomcat集成
话题:solr安装 一.下载solr 本例采用4.10.3版本. Solr所有版本下载地址:http://archive.apache.org/dist/lucene/solr/ 下载完成后,解压的目 ...
随机推荐
- 为什么在vmware中不能使用ctrl+alt+F1~6切换到字符控制台
为什么在vmware中不能使用ctrl+alt+F1~6切换到字符控制台 是因为vmware虚拟机的快捷键: ctrl+alt也用到了 因为vmware本身的hot keys也用到了ctrl+alt: ...
- PADS LAYOUT的一般流程
1.概述 本文档的目的在于说明使用PADS的印制板设计软件PowerPCB进行印制板设计的流程和一些注意事项,为一个工作组的设计人员提供设计规 范,方便设计人员之间进行交流和相互检查. 2.设计 ...
- Vue创建局部组件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【汇总】Wireshark 过滤规则
作者:Bay0net 时间:2019-07-01 14:20:09 更新: 介绍:记录使用过的 wireshark 过滤规则 0x01. 使用介绍 抓包采用 wireshark,提取特征时,要对 se ...
- 配置文件pytest.ini
前言 pytest配置文件可以改变pytest的运行方式,它是一个固定的文件pytest.ini文件,读取配置信息,按指定的方式去运行. ini配置文件 pytest里面有些文件是非test文件 py ...
- GitHub入门(一)GIT配置与Hexo博客搭建
首先安装配置Git环境,由于本人使用Windows操作系统所以从msysgit.github.io下载msysGit Windows版本,安装.(Mac一般自带Git) 安装的时候一般使用默认选项,其 ...
- 20191112 Spring Boot官方文档学习(4.5-4.6)
4.5.国际化 Spring Boot支持本地化消息,因此您的应用程序可以迎合不同语言首选项的用户.默认情况下,Spring Boot messages在类路径的根目录下查找message resou ...
- python 并发编程 多进程 队列目录
python 并发编程 多进程 队列 python 并发编程 多进程 生产者消费者模型介绍 python 并发编程 多进程 生产者消费者模型总结 python 并发编程 多进程 JoinableQue ...
- 2019 计蒜之道 初赛 第一场 商汤的AI伴游小精灵
https://nanti.jisuanke.com/t/39260 根据题意我们可以知道 这是一个树 我们只需要找到出度最大的两个点就好了 如果包含根节点的话要-- 两个点相邻的话也要-- 数据很 ...
- JAVA日期时间相关库
Java的日期时间库比较乱,同样一个Date在java.sql下定义,同时也在java.util下也定义了一遍,真不知道SUN是怎么想的. java8以后,java通过jsr310标准引入了一套符合I ...