ajax和mongodb必会命令

本文介绍了AJAX技术的优势,如无刷新更新页面内容,以及其缺点,包括浏览历史缺失和SEO问题。同时,讲解了HTTP协议的基础知识。深入探讨了MongoDB的更新操作,展示了如何修改和删除文档字段,并提供了多个命令示例。还涉及到了内嵌文档的查询和数组操作。最后,提到了批量数据插入的高效方法。
摘要由CSDN通过智能技术生成

ajax的优点

  • 允许你根据用户事件来更新页面内容
  • 无需刷新页面而与服务端进行通信

ajax的缺点

  • 没有游览历史,不能回退
  • 存在跨域问题 a.com不能直接向b.com发送请求
  • seo不太友好 爬虫爬不到ajax请求返回然后经过js动态创建的数据

http超文本传输协议详解

在这里插入图片描述
在这里插入图片描述

mongo命令

更新操作 update

  • 将_id为hello的文档替换为:对象{age:16}

  • 命令格式 db.collections.update(查找条件,新对象) 默认情况下使用新对象替换旧的对象
    db.stus.update({_id:‘hello’},{age:16})
    在这里插入图片描述

  • KaTeX parse error: Expected '}', got 'EOF' at end of input: …s.update(查询条件,{set:更改哪些条件的对象})

例子:
将_id为xxx的对象的的hobby修改为‘读书’
db.stus.update({"_id" : ObjectId(“61adec37fcba3ff57245ef21”)},{$set:{hobby:‘读书’}})
在这里插入图片描述

  • 删除指定属性 db.collections.update(查询对象条件,{KaTeX parse error: Expected 'EOF', got '}' at position 18: …set: 要删除对象属性的条件}̲) 例子: 删除某文档的age…unset:{age:23}})

在这里插入图片描述

注意:删库一般非常少用,在实际开发中,新加一个属性代表在前端是否显示

命令练习

在这里插入图片描述

  1. use my_test

在这里插入图片描述
2. db.user.insert({name:‘dage’})
3. db.user.find() 或者在括号中加入{}
在这里插入图片描述
4. db.user.insert([{name:‘pig’,age:12},{name:‘dage’,age:0}]) 插入了两条数据
5. db.user.find({})

在这里插入图片描述
6. db.user.find({}).length()

在这里插入图片描述

  1. db.user.find({username:‘sunwukong’})
    在这里插入图片描述

  2. db.user.updateMany({username:‘sunwukong’},{$set:{address:‘花果山’}})

在这里插入图片描述

  1. db.user.updateMany({username:‘zhubajie’},{$set:{username:‘tangseng’}}) 同update,只是update默认只更新查到的第一个

在这里插入图片描述

  1. db.user.updateMany({username:‘sunwukong’},{$unset:{address:‘花果山’}})

在这里插入图片描述
11. db.user.updateMany({username:‘sunwukong’},{$set:{hobby:{cities:[‘beijing’,‘shanghai’,‘shenzhen’],movies:[‘snaguo’,‘hero’]}}})
在这里插入图片描述

  1. db.user.updateMany({username:‘tangseng’},{$set:{hobby:{movies:[‘King of comedy’,‘A Chinese Odyssey’]}}})
    在这里插入图片描述
    文档的属性值也可以是一个文档,这样被称作为内嵌文档

  2. db.user.find({‘hobby.movies’:‘hero’})
    在这里插入图片描述
    ** 如果要通过内嵌文档来对文档进行查询,那么有.符号的属性要加上引号才可被辨别

14.db.user.update({username:‘tangseng’},{$push:{‘hobby.movies’:‘Interstellar’}})
其中$push用来向数组中添加元素,可以重复添加
$addToSet 也是用来向数组中添加元素,区别是不可重复添加

在这里插入图片描述
匹配了1个,但修改了0个
在这里插入图片描述

  1. db.user.remove({‘hobby.cities’:‘beijing’})

在这里插入图片描述

  1. 删除user集合

db.user.drop()

  1. 向numbers集合中插入20000条数据
    慢 不推荐

for(var i=1;i<=20000;++i){
db.numbers.insert({num:i})
}

尽量少使用数据库操作,提前打包好

var arr =[]
for(var i=1;i<=20000;++i){ arr.push({num:i}) }
db.numbers.insert(arr)
这样会快

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值