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

Linux:mongodb数据库基础操作(3.4版本)

安装

3.*版本和4.*版本安装都是一样的

Linux:mongodb数据库源码包安装(4.4.25版本)_鲍海超-GNUBHCkalitarro的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/w14768855/article/details/133826626?spm=1001.2014.3001.5501


mysql和mongodb对比 


 登录

 mongo --port 服务端口号 --host 服务器ip

mongo --port 27017 --host 192.168.254.1

 


查看帮助

help
db.help

查看数据库

show dbs
show databases


 进入数据库

use 数据库名称

use aaa

当我们进入的数据库不存在,他会自动创建

当库里有了集合,那么就可以用show dbs看到了


查看集合 

show tables
show collections

集合相当于MySQL里的表


创建集合user,并设置键值对

db.tarro.insert({"id":1,"name":"zhangsan"})

创建一个表,名称为tarro,内容为id为1  name为zhangsan,想有多少值用,隔开,:来确定键值对

 

刚刚我们在aaa里,现在把集合就创建到aaa库里了


查看集合中记录的数据记录

db.tarro.find()

 db.表名.find()

 


统计集合中的条目

db.tarro.count()

db.表名.count()

相当于表内有几行数据


 查看集合状态

db.stats()

可以看到当前所在那个集合,和对象等信息


可以插入多种数据类型条目

db.tarro.insert({"id":3,"name":"jack","isadmin":true,"gender":null,"favorite":["apple","banana" ,"orange",1,2,3],"regtime":new Date()}); 	


根据key内搜索数据

db.tarro.findOne({"id":1})
db.tarro.find({"id":1})

在tarro集合中查找id为1的一组数据


后插入的key值会覆盖先存

db.user.insert({"id":1,"id":"2"});		

 这样的话id为2而id=1被覆盖

db.user.insert({"id":1,"ID":"2"});		

这样就不会了,数据区分大小写 


key值可以为空

db.user.insert({"":"20"});


key值不可以以$开头 

 db.user.insert({"$id":"20"});	

 像这样的键值对就写不进去的

但是

特殊符号可以作为key值中 

 db.user.insert({"i$d":"20"});	

更新集合中的内

db.tarro.update({"id":1},{$set:{ "name":"xiaohong"}});

id为1的name值被修改了


批量增加集

for(i=1;i<=1000;i++){db.tarro.insert({"id":i,"name":"haha"})};	

 创建1000个集


删除集合中的某条数据

db.tarro.remove({"id":1})	

 现在xiaohong就被删除了


查看mongodb的版本

db.version()

删除集合

db.tarro.drop()

 

全部都被删除了


删除当前所在的数据库 

db.dropDatabase()		

 


退出数据库

exit

 或者

键盘上ctrl+D

成功退出

http://www.lryc.cn/news/195153.html

相关文章:

  • nginx实现灰度上线(InsCode AI 创作助手)
  • 记:apifox 返回 invalid header token 的问题排查思路
  • 【00】神经网络之初始化参数
  • 代码随想录Day20 回溯算法 LeetCode77 组合问题
  • 免费获取天气预报的API接口(Json格式)
  • 安卓程序执行入口
  • 消息队列(中间件)
  • Java|学习|异常
  • nextjs项目修改启动端口号,以及开发启动后自动打开浏览器
  • 微服务架构 | 超时管理
  • Qt 样式表大全整理
  • k8s-10 cni 网络
  • IDEA中.gitignore配置不生效的解决方案
  • SparkContext 与 SparkContext 之间的区别是什么
  • lv8 嵌入式开发-网络编程开发 17 套接字属性设置
  • VulnHub Alice
  • AUTOSAR组织发布20周年纪念册,东软睿驰NeuSAR列入成功案例
  • 转行网络安全是否可行?
  • netca_crypto.dll找不到怎么修复?详细解决办法和注意事项
  • axios的请求中断和请求重试
  • 视频怎么压缩?视频太大这样处理变小
  • 【MATLAB源码-第48期】基于matlab的16QAM信号盲解调仿真。
  • 自我介绍思考
  • 华为eNSP配置专题-VLAN和DHCP的配置
  • 微服务11-Sentinel中的授权规则以及Sentinel服务规则持久化
  • 私有化部署AI智能客服,解放企业成本,提升服务效率
  • docker数据卷+挂载(命令讲解+示例)
  • 【webrtc 】FEC 1: 音频RED rfc2198及视频ULPFEC的RED封装
  • 【Qt】Qt再学习(十七):QThread、QMutex、QTimer
  • scratch身高统计 2023年9月中国电子学会图形化编程 少儿编程 scratch编程等级考试三级真题和答案解析