微信小程序-目标追踪-数据库设计
之前玩过oracle,mysql数据库,这些都是关系型的数据库,而微信的云数据库是文档型的,具体来说是JSON 数据库。参见官网:链接
关系型数据库和 JSON 数据库的概念对应关系如下表:
关系型 | 文档型 |
---|---|
数据库 database | 数据库 database |
表 table | 集合 collection |
行 row | 记录 record / doc |
列 column | 字段 field |
文档型的数据库中的字段既可以是字符串或数字,还可以是对象或数组,就是一个 JSON 对象。这就是说关系型数据库通过子表才能实现的一对多,在文档型数据库中通过主表的一个字段是数组的方式就能轻松实现。
先期先完成最最基本的功能,连操作记录都不处理。设计下来两个集合就足够了,clients和targets。
clients集合存放的就是微信小程序的使用用户
{"_id": "b758fc63-ad4a-4aa2-92ea-09dd5c0417a2","name": "wxx","nickName": "Simon","age": 30.0,"initDate": {"$date": "2019-05-31T14:18:16.089Z"},"status": "ON","_openid": "","lastLoginDate": {"$date": "2019-08-25T03:24:21.831Z"}
}
targets集合中存放的是目标和打卡记录,其中打卡记录是目标的一个集合。通过client_id或者_openid来关联clients集合中的某一个client。
{"_id": "2dd7a4fa-be43-410d-8d60-6d61f39e4db2","client_id": "b758fc63-ad4a-4aa2-92ea-09dd5c0417a2","name": "早起","trackList": [{"location": {"coordinates": [12.0,12.0],"type": "Point"},"checkInDate": {"$date": "2019-05-31T14:26:21.776Z"}}],"_openid": "","createDate": {"$date": "2019-06-30T14:21:38.000Z"},"completeDate": {"$date": "2019-05-31T14:21:17.075Z"},"status": "PROCESSING","period": [1.0,2.0,3.0],"comment": "早起的鸟儿有虫吃"
}
转载于:https://my.oschina.net/u/3301706/blog/3097293
微信小程序-目标追踪-数据库设计相关推荐
- c语言京东购物系统,仿京东商城: 自主使用微信小程序实现的网上商城案例(包括前端和后台),利用了微信小程序的云数据库...
仿京东网上商城 介绍 自主使用微信小程序实现的仿京东网上商城案例(包括前端和后台),数据库利用了微信小程序的云数据库 软件架构 软件架构说明 数据库表设计 本系统数据库主要用了微信小程序自带的云数据库 ...
- uniapp实现微信小程序云开发数据库访问,并解决云开发数据库获取不到数据问题
uniapp实现微信小程序云开发数据库访问,并解决云开发数据库获取不到数据问题 使用工具是HBuilder X 1.配置好AppID(小程序ID) 在HBuilder X工具的manifest.js文 ...
- 微信小程序的开发界面设计
微信小程序的开发界面设计需要遵循微信官方的设计规范和标准,以确保小程序具有一致的外观和用户体验.以下是一些微信小程序开发界面设计的建议: 界面布局:微信小程序的界面布局应该简洁明了,易于使用.界面中应 ...
- 微信小程序+云开发+数据库使用
微信小程序+云开发+数据库使用 参考地址:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/database/read.ht ...
- 微信小程序基于云数据库简单实现帖子点赞功能。
思路: 1·用云函数或者app.js获取用户openid,在每个帖子里面like_people数组里添加点赞过该帖子的用户openid.获取帖子云数据存放到suju:[]里. 2·点击点赞按钮图标变换 ...
- 新手如何用微信小程序和云数据库做一个论坛?【帖子页】
新手小白用微信小程序和云数据库做一个论坛[帖子页] 先放个效果图 由于后面换了头像,所以评论的头像和发帖的头像不一样. 要做个同款论坛,首先需要用到云数据库.在微信开发者工具的左上角开通云开发就可以了 ...
- 微信小程序志愿者服务的设计与实现
源码获取:https://www.bilibili.com/video/BV13m4y1c7NW/ 技术要求: (1)微信小程序开发工具开发: (2)后端:ssm + mysql + b ...
- 微信小程序云开发数据库 网页管理后台
目录 一.前言 使用云开发来开发微信小程序提供云数据库.云存储.云函数.云调用等支持,可以快速配置云端环境进行开发,但暂时并没有提供好的运维解决方案.了解到微信小程序官方文档中提供了云开发HTTP A ...
- 微信小程序怎么取mysql,微信小程序怎么读取数据库?小程序如何读取数据?
微信小程序怎么读取数据库?小程序如何读取数据?各位微信用户们,如果你再开发微信小程序的过程中,需要微信小程序读取数据库的话,就跟着小编往下看微信小程序怎么读取数据库. 微信小程序怎么读取数据库? 微信 ...
最新文章
- LeetCode 21. Merge Two Sorted Lists
- 【深度学习的数学】“2×4×1层带sigmoid激活函数的神经网络感知机对三角形平面的分类训练预测”,输出层加偏置b(实时绘制损失函数曲线)(对输入数据归一化)(奇迹出现了!)
- Python技术分享:内置数据结构之双向队列
- 为什么 MySQL 回滚事务也会导致 ibd 文件增大?
- 【CodeForces - 514C】Watto and Mechanism(字符串哈希)
- 论文浅尝 | 一种嵌入效率极高的 node embedding 方式
- org/springframework/util/backoff/BackOff
- MySQL 数据库性能优化之SQL优化
- openVINO2021.4安装记录
- Silverlight toolkit 中ListPicker控件的用法【转】
- Python—json模块
- 贺利坚老师汇编课程57笔记:CMP和JXXX配合实现条件转移指令if
- centos wget默认路径_TRMM 数据windows平台wget下载方法(2021年1月13日可用)
- 嵌入式Linux开发板移植SSH
- 清理C盘内存有用的办法
- python 爬虫系列之极验滑块打码
- Clevo P950系列拆机
- 北邮计算机自招,2019自主招生能报几所学校?深度解析90所自招院校限报!
- <C++>初识多态,剖析virtual关键字
- Eth-Trunk负载分担不均怎么办,如何通过Hash算法实现负载分担?