热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mongodb简单的增删改查功能实现

showdbs#显示当前mongodb的数据库有哪些库ctrlc退出客户端--》关闭usemydb;db;#显示当前是哪个数据库user在mongo中叫集合collectio

>show dbs #显示当前mongodb的数据库有哪些库
ctrl+c 退出客户端--》关闭
>use mydb;
>db; #显示当前是哪个数据库
//user在mongo中叫集合collection 
//每行数据,被称为一个文档
bson --- json
db.user.insert({uname:"tom",pwd:"abc123",height:173,birthday:ISODate("1997-10-01")}) 
show collections; #显示当前数据库集合
db.user.find();#查询数据库
db.user.insert({uname:"jack",pwd:"abc234",height:175,birthday:ISODate("1998-09-15")}) 

db.user.insert({uname:"rose",pwd:"a567",sex:1,height:176,birthday:ISODate("1987-08-25")}) 


------------------------------------------------------------------
bson ---json
json(Javascript object notation )
key:value结构的字符串{"key1":"value1","key2":"value2"}
json与xml对应,是网络传输的重要数据格式

bson(Binary Serialized Document Format)
json所有的数据库都是字符串,bson有整型/日期型等
bson有三个特点:轻量性,可遍历性,高效性

db.user.insert({uname:"john",pwd:"a567",sex:1,height:165,birthday:ISODate("1989-07-21"),address:["地址1","地址2","地址3"]}) 

//内嵌型文档结构 体现一对多 多对一关系 在数据里直接显示了 不需要联合查询了 速度快远远高于关系型数据库
db.user.insert({uname:"timy",pwd:"a567",sex:1,height:165,birthday:ISODate("1989-07-21"),
address:["地址1","地址2","地址3"],
phone:[
{pno:"13122213211",cs:"联通"},
{pno:"18111132116",cs:"联通"},
{pno:"13922888666",cs:"联通"}
]
}) ;

db.user.insert({uname:"jack2",pwd:"a567",sex:1,height:165,birthday:ISODate("1989-07-21"),
address:["地址1","地址2","地址3"],
phone:[
{pno:"13122213211",cs:"联通"},
{pno:"18111132116",cs:"联通1"},
{pno:"13922888666",cs:"联通3"}
]
}) ;

db.user.insert({uname:"rose",pwd:"a567",sex:1,height:165,birthday:ISODate("1989-07-21"),
address:["地址1","地址2","地址3"],
phone:[
{pno:"13122213211",cs:"联通"},
{pno:"18111132116",cs:"移动"}
]
}) ;

db.user.insert({uname:"trasy",pwd:"a567",sex:1,height:165,birthday:ISODate("1989-07-21"),
address:["地址1","地址2","地址3"],
phone:[
{pno:"13122213211",cs:"联通"},
{pno:"18111132116",cs:"移动"}
]
}) ;
//查看数据个数
db.user.find().count();

//增删改查
删:条件的删除
db.user.remove({uname:"jack"})


查:条件的查看
db.user.find({uname:"jack"});
db.user.find({uname:"tom"});
db.user.find({uname:/j/});//模糊查询 正则表达式
db.user.find({height:{$gt:170,$lt:180}}); //大于170 小于180
db.user.find({birthday:{$lt:ISODate("1997-10-01")}}); //小于97年的
db.user.find().limit(5);//显示5条数据
db.user.find().skip(10).limit(5); //跳过前面10条 ,查后面的5条 分页

修改
db.user.update({uname:"tom"},{$set:{pwd:"123456"}});
插入 for循环是js语法
for(i&#61;0;i<1000;i&#43;&#43;){
 db.user.insert({uname:"tom"&#43;i,pwd:"abc123",height:173,birthday:ISODate("1997-10-01")});
}


cls 清屏


内嵌文档的增删改查
db.user.drop();//删除集合

//查询  厂商是移动的用户信息
db.user.find({phone:{$elemMatch:{cs:"移动"}}});

 
//修改
db.user.update({uname:"trasy","phone.pno":"13122213211"},{$set:{"phone.$.cs":"移动233"}});

 db.user.update({uname:"trasy"},{$push:{phone:{pno:"13122213211",cs:"联通66666"}}});//插入子集合数据

 db.user.update({uname:"trasy"},{$pull:{phone:{pno:"13122213211",cs:"联通66666"}}});//移除子集合数据


推荐阅读
  • 通过将常用的外部命令集成到VSCode中,可以提高开发效率。本文介绍如何在VSCode中配置和使用自定义的外部命令,从而简化命令执行过程。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • MongoVUE基础操作指南:轻松上手数据库管理
    本文介绍了MongoVUE的基础操作,旨在帮助用户轻松掌握数据库管理技巧。MongoVUE是一款功能强大的MongoDB客户端工具,虽然需要注册,但其用户友好的界面和丰富的功能使其成为许多开发者的首选。文中详细解释了安装步骤、基本配置以及常见操作方法,并对一些常见的问题进行了修正和补充,确保用户能够快速上手并高效使用MongoVUE进行数据库管理。 ... [详细]
  • 成功实现Asp.Net MVC3网站与MongoDB数据库的高效集成
    我们成功地构建了一个基于Asp.NET MVC3框架的网站,并实现了与MongoDB数据库的高效集成。此次更新不仅完善了基本的创建和显示功能,还全面实现了数据的增删改查操作。在创建功能方面,我们修复了之前代码中的错误,确保每个属性都能正确生成。此外,我们还对数据模型进行了优化,以提高系统的性能和稳定性。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 在《Cocos2d-x学习笔记:基础概念解析与内存管理机制深入探讨》中,详细介绍了Cocos2d-x的基础概念,并深入分析了其内存管理机制。特别是针对Boost库引入的智能指针管理方法进行了详细的讲解,例如在处理鱼的运动过程中,可以通过编写自定义函数来动态计算角度变化,利用CallFunc回调机制实现高效的游戏逻辑控制。此外,文章还探讨了如何通过智能指针优化资源管理和避免内存泄漏,为开发者提供了实用的编程技巧和最佳实践。 ... [详细]
  • PTArchiver工作原理详解与应用分析
    PTArchiver工作原理及其应用分析本文详细解析了PTArchiver的工作机制,探讨了其在数据归档和管理中的应用。PTArchiver通过高效的压缩算法和灵活的存储策略,实现了对大规模数据的高效管理和长期保存。文章还介绍了其在企业级数据备份、历史数据迁移等场景中的实际应用案例,为用户提供了实用的操作建议和技术支持。 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • MongoDB高可用架构:深入解析Replica Set机制
    MongoDB的高可用架构主要依赖于其Replica Set机制。Replica Set通过多个mongod节点的协同工作,实现了数据的冗余存储和故障自动切换,确保了系统的高可用性和数据的一致性。本文将深入解析Replica Set的工作原理及其在实际应用中的配置和优化方法,帮助读者更好地理解和实施MongoDB的高可用架构。 ... [详细]
author-avatar
汽车一族coolboy_518
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有