unicloud 云数据库概念及创建一个云数据库表并添加记录(数据)

news/2024/4/24 13:13:05/文章来源:https://blog.csdn.net/weixin_44368963/article/details/136556256

云数据库概念

uniCloud提供了一个 JSON 格式的文档型数据库。顾名思义,数据库中的每条记录都是一个 JSON 格式的文档。

它是 nosql 非关系型数据库,如果您之前熟悉 sql 关系型数据库,那么两者概念对应关系如下表:

关系型JSON 文档型
数据库 database数据库 database
表 table集合 collection。但行业里也经常称之为“表”。无需特意区分
行 row记录 record / doc
字段 column / field字段 field
使用sql语法操作使用MongoDB语法或jql语法操作
  • 一个uniCloud服务空间,有且只有一个数据库;
  • 一个数据库可以有多个表;
  • 一个表可以有多个记录;
  • 一个记录可以有多个字段。

例如,数据库中有一个表,名为user,存放用户信息。表user的数据内容如下:

{"name":"张三","tel":"13900000000"}
{"name":"李四","tel":"13911111111"}

上述数据中,每行数据表示一个用户的信息,被称之为“记录(record/doc)”。name和tel称之为“字段(field)”。而“13900000000”则是第一条记录的字段tel的值。

每行记录,都是一个完整的json文档,获取到记录后可以使用常规json方式操作。但表并非json文档,表是多个json文档的汇总,获取表需要使用专门的API。

与关系型数据库的二维表格式不同,json文档数据库支持不同记录拥有不同的字段、支持多层嵌套数据。

仍然以user表举例,要在数据库中存储每个人的每次登录时间和登录ip,则变成如下:

{"name":"张三","tel":"13900000000","login_log":[{"login_date":1604186605445,"login_ip":"192.168.1.1"},{"login_date":1604186694137,"login_ip":"192.168.1.2"}]
}
{"name":"李四","tel":"13911111111"}

上述数据表示张三登录了2次,login_date里的值是时间戳(timestamp)格式,在数据库内timestamp就是一个数字类型的数据。而李四没有登录过。

可以看出json文档数据库相对于关系型数据库的灵活,李四可以没有login_log字段,也可以有这个字段但登录次数记录与张三不同。

此处仅为举例,实际业务中,登录日志单独存放在另一个表更合适

对于初学者,如果不了解数据库设计,可以参考opendb,已经预置了大量常见的数据库设计。

对于不熟悉传统数据库,但掌握json的js工程师而言,uniCloud的云数据库更亲切,没有传统数据库高昂的学习成本。

在uniCloud web控制台新建表时,在下面的模板中也可以选择各种opendb表模板,直接创建。

uniCloud同时支持阿里云、腾讯云和支付宝小程序云,它们的数据库大体相同,有细微差异。阿里云和支付宝小程序云的数据库是mongoDB4.0,腾讯云则使用自研的文档型数据库(兼容mongoDB 4.0版本)。uniCloud基本抹平了不同云厂商的差异,有差异的部分会在文档中单独标注。

创建unicloud表

打开 uniCloud web控制台 https://unicloud.dcloud.net.cn/

创建或进入一个已存在的服务空间,选择 云数据库->云数据库,创建一个新表
在这里插入图片描述
比如创建一个users表
下面的那个opendb模板先不用选,你可以理解为你创建页面的页面模板,我们这里创建空的表即可,结构多了反而不利于理解

在这里插入图片描述
创建之后便可看见如下界面

在这里插入图片描述
每个数据表,包含3个部分:

  • data:数据内容
  • index:索引
  • schema:数据表格式定义
    在uniCloud的web控制台可以看到一个数据表的3部分内容。

添加数据内容

数据内容
data,就是存放的数据记录(record)。里面是一条一条的json文档。

在云控制台添加数据内容过程如下,点击添加内容

在这里插入图片描述
控制台会弹出如下侧边抽屉,在里面输入记录即可

在这里插入图片描述
知道在坐的各位彦祖不想动手,json数据我放这了

{"name": "qayrup","age":18,"email": "qayrup@aliyun.com","intro": "长得像吴彦祖"
}

将上面代码复制粘贴到抽屉栏内,然后点击确认即可

在这里插入图片描述
点击确认后,即可看到如下界面
其中_id是系统自动生成的,不用我们管理,它唯一的,可以作为本条记录的唯一标识
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_997892.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于React的低代码开发:探索应用构建的新模式

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-OywB1Epu30PrvOJQ {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

智慧农业5G融合方案(2)

应用场景 农业航空 农业农村部资料显示,植保无人机具有机动灵活、喷施效率高、施药效果好等特点,能够克服复杂地形条件下地面喷雾机具进地难的问题。目前我国有400多家企业从事植保无人机研发、生产、销售等全产业链业务。主要机型以电动多旋翼为主。2018年作业面积约2.67亿…

ElasticSearch之文档的存储

写在前面 本文看下文档的存储相关内容。 1:如何确定文档存储在哪个分片? 我们需要确保文档均匀分布在所有的分片中,避免某些部分机器空闲,部分机器繁忙的情况出现,想要实现均匀分布我们可以考虑如下的几种分片路由算…

Python数据分析库之pandera使用详解

概要 在数据科学和数据分析中,数据的质量至关重要。不良的数据质量可能导致不准确的分析和决策。为了确保数据的质量,Python Pandera 库应运而生。本文将深入介绍 Python Pandera,这是一个用于数据验证和清洗的库,并提供丰富的示例代码,帮助大家充分利用它来提高数据质量…

FPGA AXI4总线操作教程

AXI(Advanced Extensible Interface)总线是一种高性能、低延迟的片上系统(SoC)接口标准,广泛应用于现代数字系统设计中。它允许不同的硬件组件以高效、可靠的方式进行数据传输和控制。本教程将介绍AXI总线的基本操作和…

Java实现快速排序算法

Java实现快速排序算法 以下是Java中的快速排序算法实现示例: public class QuickSort {// 快速排序入口函数public static void sort(int[] array) {quickSortRecursive(array, 0, array.length - 1);}// 递归函数实现快速排序private static void quickSortRecur…

【Linux】iftop命令详解

目录 一、iftop简介 二、安装iftop命令 2.1 命令查看测试环境系统信息 2.2 查看iftop版本与命令帮助 三、iftop的基本使用 3.1 直接使用iftop命令 3.2 iftop的显示说明 3.3 指定监控某块网卡 3.4 显示某个网段进出封包流量 3.5 按照流量排序 3.6 过滤显示连接 3.7 …

删除docker镜像文件时出现image is referenced in multiple repositories问题

首先查看docker镜像列表 docker images根据错误image is referenced in multiple repositories,我们发现e4e0b11c4100和928c7235d6a0分别有两个REPOSITORY,所以无法删除。此时我们需要通过REPOSITORY:TAG来指定需要删除的docker镜像文件 docker rmi vo…

Keepalive 解决nginx 的高可用问题

一 说明 keepalived利用 VRRP Script 技术,可以调用外部的辅助脚本进行资源监控,并根据监控的结果实现优先动态调整,从而实现其它应用的高可用性功能 参考配置文件: /usr/share/doc/keepalived/keepalived.conf.vrrp.localche…

【Linux】深入理解ls命令

🍎个人博客:个人主页 🏆个人专栏:Linux ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 基本用法 常用选项 示例 高级用法 结语 我的其他博客 前言 在 Linux 系统中,ls 命令是一个强大而又基础的工具&am…

海云安荣获「粤港澳大湾区金融创新成果优秀解决方案」奖

近日,由广东省粤港澳合作促进会指导,广东省粤港澳合作促进会金融专业委员会、粤港澳大湾区金融创新研究院和澳门电子金融产业贸易促进会联合开展了“第二届金融创新优秀应用案例与解决方案技术成果评定”工作。海云安向组委会提交的“海云安开发者安全助…

北斗卫星引领智能油气管线革新

北斗卫星引领智能油气管线革新 现代化的油气管线系统已成为国家经济发展的重要基础设施,而北斗卫星则为这些管线注入了新的活力。北斗卫星作为中国自主研发的卫星导航定位系统,其准确度和稳定性在全球范围内享有盛誉。在智能化时代的背景下,…

数字时代下的内部审计蜕变:探索数字化转型的七大关键领域

写在前面 内部审计是一种独立的、客观的确认和咨询活动,包括鉴证、识别和分析问题以及提供管理建议和解决方案。狭义的数字化转型是指将企业经营管理和业务操作的各种行为、状态和结果用数字的形式来记录和存储,据此再对数据进行挖掘、分析和应用。广义…

统信os平台普通用户无法调用clockdiff的问题解决方法

问题描述 部署OceanBase 时遇到clockdiff: socket: operation not permitted 问题,从官网了解到可以通过setcap cap_net_rawep "$(which clockdiff)"解决 在centos平台,这个可以解决问题,但是在统信os平台失败了。。 参考: Ocea…

(黑马出品_05)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

(黑马出品_05)SpringCloudRabbitMQDockerRedis搜索分布式 微服务技术分布式搜索 今日目标1.初识elasticsearch1.1.了解ES1.1.1.elasticsearch的作用1.1.2.ELK技术栈1.1.3.elasticsearch和lucene1.1.4.为什么不是其他搜索技…

Python爬虫——scrapy-3

目录 免责声明 任务 文件简介 爬取当当网内容单管道 pipelines.py items.py setting dang.py 当当网多管道下载图片 pipelines.py settings 当当网多页下载 dang.py pielines.py settings items.py 总结 免责声明 该文章用于学习,无任何商业用途 …

基于springboot的大学生智能消费记账系统的设计与实现(程序+数据库+文档)

** 🍅点赞收藏关注 → 私信领取本源代码、数据库🍅 本人在Java毕业设计领域有多年的经验,陆续会更新更多优质的Java实战项目,希望你能有所收获,少走一些弯路。🍅关注我不迷路🍅** 一、研究背景…

在PyCharm中使用Jupyter Notebooks实现高效开发

大家好,在数据科学领域,Jupyter Notebooks已成为一种流行的工具,许多专业人士都在使用它来进行数据分析、机器学习等任务。有时,我们希望在更加强大、功能齐全的IDE环境中运行Jupyter笔记本,以提高工作效率和开发体验。…

JS实现chatgpt数据流式回复效果

最近高了一个简单chatgpt对话功功能,回复时希望流式回复,而不是直接显示结果,其实很简单,前端流式读取即可,后端SSE实现流式传输 前端用到fetch获取数据,然后利用reader读取 let requestId parseInt(Ma…

谷歌最新版本下载最新驱动网址chrome driver Version: 122.0.6261.111

谷歌最新版本下载最新驱动网址chrome driver Version: 122.0.6261.111 https://googlechromelabs.github.io/chrome-for-testing/ 下载完之后放在谷歌安装路径下即可