前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >『云数据库』删除数据

『云数据库』删除数据

原创
作者头像
BNTang
发布2024-01-16 06:54:44
2620
发布2024-01-16 06:54:44
举报
文章被收录于专栏:『云开发』『云开发』

1.前言

经过上一篇文章的介绍,大家可以了解到如何在微信小程序开发中通过代码的方式来进行操作云数据库,主要分为以下几个步骤:

  • 1.初始化云开发环境
  • 2.拿到当前环境对应的数据库
  • 3.拿到当前数据库中指定的集合
  • 4.再通过集合进行操作数据库

2.代码删除

在删除之前,首先我得要给大家介绍一下云数据库与关系型数据库的区别,这样大家才能够更好的理解云数据库的删除操作。

首先给大家看一张图:

大家可以看到,在云数据库当中一行记录就是一个 record / doc ,而在关系型数据库当中一行记录就是一条数据,知道了这些之后就可以开始进行删除操作了。

2.1.根据 _id 删除

在云数据库当中,每一条记录都会有一个 _id ,这个 _id 就是这条记录的唯一标识,所以我们可以通过这个 _id 来进行删除操作。

也是首先通过拿到集合,然后再通过集合拿到指定的记录,最后再通过 remove 方法来进行删除操作, 这个 ID,大家自己去云控制台中获取,获取方式我就真的不多说了。

🐤注意:这个删除操作,微信云开发默认的权限是只有创建者才能够进行删除操作,如果你想要其他人也能够进行删除操作,那么你需要在云控制台中进行设置。 😁默认情况下,数据只能是添加的人才可以删除,其它人是没有权限的,可以在后台根据自己的需求修改权限,这一点大家是需要知道和了解清楚的

我删除不是自己创建的数据,控制台出现了如下的错误:

document.remove:fail document.remove:fail cannot remove document with _id 08bade59659d76d500164ecb5824f337, please make sure that the document exists and you have the corresponding Write permission

该如何解决这个问题呢,我们可以在云控制台中进行设置,默认权限是 仅创建者可读写,我们可以进行自定义安全规则,这样就可以解决这个问题了。

更改完毕了权限之后我们再来进行删除:

2.2.根据条件删除

2.2.1.查询条件

通过集合的 where 方法可以进行条件查询,通过 remove 方法可以进行删除操作,这样就可以实现根据条件删除了。

官方文档:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/collection/Collection.where.html

2.2.2.数据库操作符

看这种范围的删除,该如何删除之前首先要查阅一下官方文档:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/collection/Collection.where.html

通过观察在官方代码当中首先是通过 const _ = db.command 来获取到 command 对象,然后再通过 _.gt 来获取到大于的条件,最后再通过 where 方法来进行查询。

既然如此,那么我们就可以通过 _.gt 来获取到大于的条件,然后再通过 remove 方法来进行删除操作。

const _ = db.command;,通过这个语句我们就可以获取到条件判断工具对象,然后再通过 _.lt 来获取到小于的条件,除了小于之外还有很多的条件,大家可以自己去查阅一下官方文档。

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/Command.html

本篇文章内容介绍到这就结束了,我们下期再见,感谢大家的观看,谢谢大家。

🐤如果您对本文有任何疑问或想法,请在评论区留言,我将很乐意与您交流。 🐰您的每一条评论对我都至关重要,我会尽快给予回复。 🎈如果您觉得这篇文章对您有所启发或帮助,请不吝赞赏、收藏或分享。 🎁您的每一个动作都是对我创作的最大鼓励和支持。 👍谢谢您的阅读和陪伴!

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.前言
  • 2.代码删除
    • 2.1.根据 _id 删除
      • 2.2.根据条件删除
        • 2.2.1.查询条件
        • 2.2.2.数据库操作符
    相关产品与服务
    云数据库 MySQL
    腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档