当前位置: 首页 > news >正文

mongodb的操作

mongodb

非关系型数据库,又叫nosql,缓存型,使用场景多是解决大规模数据集合多重数据种类

  1. 下载 安装帮助

  2. 配置数据文件存储位置:自己在盘里创建文件夹。c:\data\db

找到安装目录\Server\4.0\bin\ -> cmd回车-> mongod 回车
—>
mongod --dbpath c:\data\db
就会出现一个27017 ,你在浏览器里测试 localhost:27017 回车 出现一句英文就可以了。

这个27017的窗口不能关闭 ,另开一个黑窗口,并且在第二个黑窗口输入 mongo 就是连接mongodb数据库

data和db目录要手动创建

  1. 服务端启动: 可选

找到安装目录\Server\4.0\bin\ -> cmd回车-> mongod 回车

一般开启会默认启动

  1. 客户端启动:

找到安装目录\Server\4.0\bin\ -> cmd回车-> mongo 回车

  1. 环境变量 可选

为了在任意盘符下去都可以启动 mongod服务端|mongo客户端,把安装目录添加到环境变量
mysql vs mongodb

mysqlmongoDb
database(库)database(库)
table(表)collection(集合)
row(一条数据)document(文档)
column(字段)field(区域)
二维表,每次存到磁盘json,存在缓存,关闭时存到磁盘存储方式

mongodb命令行操作 声明式 | obj.api()
库操作

: show dbs
  	db 查看当前库
建:	use 库名	   没有建,有就切换
删: db.dropDatabase()  删除当前库

集合(表)操作

建:db.createCollection('表名',{配置})
  //配置:{size:文件大小,capped:true,max:条数|文档数} capped定量
  //db.表(集合).isCapped() 返回 true/false 是否是定量
查:show collections / db.getCollectionNames()
删:db.|集合.drop()

文档(row)操作

db.集合.save({}) //添加一条
db.集合.insert({})  //添加一条
db.insertOne({}) //添加一条

db.集合.save([{},{}]) //多条
db.集合.insert([{},{}]) //多条
//insert  不会替换相同ID	save会

db.集合.deleteOne({要删数据条件描述}) //一条
db.集合.remove({},true)  //一条

db.集合.remove({要删数据条件描述}) //多条
db.集合.remove({}) //清空表

db.集合.udpate({查询条件},{替换条件},插入boolean,全替换boolean)

查询条件

{age:22} age == 22
{age:{KaTeX parse error: Expected 'EOF', got '}' at position 6: gt:22}̲} age > 22 {a…lt:22}} age < 22
{age:{KaTeX parse error: Expected 'EOF', got '}' at position 7: gte:22}̲} age>=22 {ag…lte:22}} age<=22
{age:{ l t e : 122 , lte:122, lte:122,gte:22}} age<=122 && age>=22
{$or:[{age:22},{age:122}]} 22 or 122
{key:value,key2,value2} value && value2
{name:/正则/}

替换条件

{ s e t : 数 据 , set:{数据}, set:,inc:{age:1}}

所有:db.集合.find(条件)
条数: db.集合.find().count()
去重:db.集合.distinct(key)

db.集合.find({条件},{指定要显示列区域})

指定要显示列区域

username:1 显示这个区域,其他不显示

username:0 不显示这个区域,其他显示

_id 是默认显示

db.集合.find().sort({key:1,key2:-1}) //升
db.集合.find().sort({key:-1})	//降

限定

db.集合.find().limit(number)  //限定
db.集合.find().skip(number)	//跳过
db.集合.findOne()//找第一个
db.集合.find().limit(1)  //查询第一条

相关文章:

  • SQL SELECT基本语句结构
  • node + mongodb客户端
  • node + mongoose
  • Oracle定时值执行存储过程
  • Express生成器
  • 处理文件缓存
  • http模块
  • fs模块
  • fs 流
  • Autohotkey读写ini文件内容
  • 静态资源托管
  • 难道.NET Core到R2连中文编码都不支持吗?
  • 前端和后端接口的实现简述
  • DCloud与APICloud的对比
  • nodejs --路由 router
  • css布局,左右固定中间自适应实现
  • flutter的key在widget list的作用以及必要性
  • JS变量作用域
  • overflow: hidden IE7无效
  • sessionStorage和localStorage
  • Sublime Text 2/3 绑定Eclipse快捷键
  • Vue UI框架库开发介绍
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • WinRAR存在严重的安全漏洞影响5亿用户
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 测试如何在敏捷团队中工作?
  • 分布式事物理论与实践
  • 关于 Cirru Editor 存储格式
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 聊聊directory traversal attack
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 前嗅ForeSpider教程:创建模板
  • 如何选择开源的机器学习框架?
  • 手写一个CommonJS打包工具(一)
  • 阿里云服务器购买完整流程
  • 交换综合实验一
  • 新年再起“裁员潮”,“钢铁侠”马斯克要一举裁掉SpaceX 600余名员工 ...
  • #define,static,const,三种常量的区别
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (十五)使用Nexus创建Maven私服
  • (一) springboot详细介绍
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (译) 理解 Elixir 中的宏 Macro, 第四部分:深入化
  • (转)Linq学习笔记
  • (转)重识new
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • ./configure,make,make install的作用
  • .gitignore文件---让git自动忽略指定文件
  • .NET Framework Client Profile - a Subset of the .NET Framework Redistribution
  • .net FrameWork简介,数组,枚举
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...