零基础入门低代码后端开发,只需几行代码就可以操作数据库

本文涉及的产品
PolarDB Agent Express,2核4GB
PolarDB Agent Flow,2核4GB
PolarSearch,搜索节点 4核8GB
简介: 零基础入门低代码后端开发,只需几行代码就可以操作数据库

目录

创建自定义连接器

文档型数据库介绍

获取数据库实例

获取数据库的集合

查询数据

小程序中调用

总结

在日常小程序开发中,我们经常需要将表单收集到的数据存入数据库中,方便日后的查阅。如果采用传统架构,需要租用虚拟机,部署Mysql。后端服务如果直接暴露到公网上,如果没有做好安全防护,很容易被攻击。

尤其对于初学者,自己搭建后端服务无疑是困难的。那有没有相对轻量简便的方案来搭建后端服务呢?2021年推出的微搭低代码就可以方便的解决这个问题。低代码以云开发为技术底座,可以通过简便的API就能操作和访问线上的数据库。本文就带着大家体验一下线上后端服务的各种能力。

创建自定义连接器


低代码中是通过自定义连接器来操作数据库的。我们可以登录低码的控制台,点击自定义连接器,点击新建自定义连接器,来创建后端服务

在弹出的窗口输入服务的名称,标识会自动生成

点击立即新建按钮来增加后端的方法

我们这里选择自定义代码来操作数据库

文档型数据库介绍


要想获取数据库的引用,首先要知道数据库在哪存放的。微搭底层是使用的云开发,我们要切换到云开发Cloudbase产品去。具体可以在导航条上找到相应的产品。进入之后,找到数据库

关系型数据库不同的是,微搭使用的是文档型数据库。在关系型数据库里,是以表为单位来管理和存放数据的。而文档型数据库是使用集合的概念来存放数据的。

另外的不同就是数据结构的不同,关系型数据库的是以行和列来管理数据的。文档型数据库的概念叫记录。每条记录都是一个json对象

json对象最大的特点是以键值对来存储数据,左边是键,右边是值。初学者可能会说,我要怎么理解呢?我感觉你还是记忆比较好,因为IT也是独立的一个学科,本身零基础,然后非要和现实世界硬扯上关系,往往你理解的都是错误的。导致了在错误的道路上越走越远。

基础的概念熟悉了之后,那要如何操作数据库呢?操作数据库一般会有代码模板,我们可以从官方文档找到模板

module.exports = async function (params, context) {
  const result = await context.database.collection('数据库集合名称').get();
  // 在这里返回这个方法的结果,需要与出参定义的结构映射
  return {
    _id: 123456
  };
};

有的初学者会吐槽说官方文档写的让人看不懂。其实并不是官方文档写的不好,因为你任何基础也没有,上来就直接开始做软件,未免有点急于求成的感觉。

官方文档一般是给你提供编程指引,先是解释各种技术概念,然后会辅以代码。有了代码我们就需要知道在哪里使用,一般是可以将这段代码直接粘贴到自定义连接器的方法里,如下:

这里要注意需要把原来自动生成的代码都删掉,然后贴入官方文档的代码。这样,你的代码模板就有了。

获取数据库实例


我们如果需要操作数据库,一般是需要获取数据库的实例,我们改造一下代码,增加一行获取数据库实例的代码

module.exports = async function (params, context) {
  const db = context.database
  //const result = await context.database.collection('数据库集合名称').get();
  // 在这里返回这个方法的结果,需要与出参定义的结构映射
  return {
    _id: 123456
  };
};

这里const表示常量的意思,赋值之后就不允许改变。context表示程序的上下文,一般里边会预置各类属性,我们通过点的语法调用了database这个属性。通过这句话我们就获取到了数据库的实例

所谓的数据库实例就是当前这个云开发环境下的数据库

获取数据库的集合


获取到数据库之后,我们下一步就需要获取具体的集合,如果和关系型数据库做对比,就是要获取某张表,获取集合的代码如下:

module.exports = async function (params, context) {
  const db = context.database
  const collection = db.collection("user")
  //const result = await context.database.collection('数据库集合名称').get();
  // 在这里返回这个方法的结果,需要与出参定义的结构映射
  return {
    _id: 123456
  };
};

这里的user就是我们的集合名称,那这个名称要如何去找呢?我们先需要在数据模型找到我们需要获取的数据源

这里的标识还不是集合的名称,我们要在数据库的列表上挨个对比是哪一个集合

找到之后需要将这个名字替换到编辑器中

查询数据


我们获取到集合后,一般是先需要获取数据。我们可以调用get方法来获取数据。先看一下这个方法的介绍

一般看一个官方方法,需要了解三部分的内容。先是看接口描述,看这个方法是干什么用的。然后看入参,入参是我们调用的时候必须传入的。接着需要看返回结果,返回结果一般是我们需要获取的数据。

这里get方法是用来获取数据,最多只能获取100条,这个是必须要注意的。我们在关系型数据库是通过select语句来获取表的记录的,如果没指定是获取的全部数据。文档型数据库不允许返回全部,一般你在小程序部分调用的时候是需要考虑分页的,要不然就获取不到所有的数据。

我们再改一下代码,来获取一下数据

module.exports = async function (params, context) {
  const db = context.database
  const collection = db.collection("lcap-data-2hhicMDfJ-hsjcd_avb5fh8-preview")
  const result = await collection.get()
  //const result = await context.database.collection('数据库集合名称').get();
  // 在这里返回这个方法的结果,需要与出参定义的结构映射
  return result;
};

改造完之后可以点击界面上的方法测试,看看我们有没有获取到数据

因为我们的get方法不需要参数,所以提交参数那是一个空对象。运行之后测试结果是成功,而且也正确的返回了数据。正常之后就需要点击出参映射,让方法有返回值

小程序中调用


后端方法写好之后,一般是需要在小程序中调用的。调用比较简单,可以先定义个模型变量,来调用我们刚刚创建的方法。测试发现,无法在变量里调用,主要的原因是方法意图必须选择查询列表。勾选了之后我们就可以在模型变量里调用我们的自定义连接器的方法

展示的时候,我们可以绑定返回结果的数组

文本内容从循环中绑定即可

总结


我们本篇详细的介绍了如何在低代码中使用云开发数据库,需要先定义自定义连接器,通过api的形式获取数据。小程序中通过定义模型变量,然后做变量绑定即可。过程明白了,在开发后端服务时就不会无从下手了,还不会的同学赶紧去练一练吧。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
11月前
|
存储 关系型数据库 数据库
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
本文通过一个 Agentic RAG 应用的完整构建流程,展示了如何借助 RDS Supabase 快速搭建具备知识处理与智能决策能力的 AI 应用,展示从数据准备到应用部署的全流程,相较于传统开发模式效率大幅提升。
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
|
人工智能 安全 机器人
无代码革命:10分钟打造企业专属数据库查询AI机器人
随着数字化转型加速,企业对高效智能交互解决方案的需求日益增长。阿里云AppFlow推出的AI助手产品,借助创新网页集成技术,助力企业打造专业数据库查询助手。本文详细介绍通过三步流程将AI助手转化为数据库交互工具的核心优势与操作指南,包括全场景适配、智能渲染引擎及零代码配置等三大技术突破。同时提供Web集成与企业微信集成方案,帮助企业实现便捷部署与安全管理,提升内外部用户体验。
1052 12
无代码革命:10分钟打造企业专属数据库查询AI机器人
|
12月前
|
安全 druid Nacos
0 代码改造实现应用运行时数据库密码无损轮转
本文探讨了敏感数据的安全风险及降低账密泄漏风险的策略。国家颁布的《网络安全二级等保2.0标准》强调了企业数据安全的重要性。文章介绍了Nacos作为配置中心在提升数据库访问安全性方面的应用,并结合阿里云KMS、Druid连接池和Spring Cloud Alibaba社区推出的数据源动态轮转方案。该方案实现了加密配置统一托管、帐密全托管、双层权限管控等功能,将帐密切换时间从数小时优化到一秒,显著提升了安全性和效率。未来,MSE Nacos和KMS将扩展至更多组件如NoSQL、MQ等,提供一站式安全服务,助力AI时代的应用安全。
616 14
|
SQL 数据建模 关系型数据库
别光知道存数据库了,数据建模才是王道!(入门指南+实战代码)
别光知道存数据库了,数据建模才是王道!(入门指南+实战代码)
2894 4
|
9月前
|
存储 JSON 数据建模
鸿蒙 HarmonyOS NEXT端云一体化开发-云数据库篇
云数据库采用存储区、对象类型、对象三级结构,支持灵活的数据建模与权限管理,可通过AGC平台或本地项目初始化,实现数据的增删改查及端侧高效调用。
474 1
|
11月前
|
人工智能 Java API
后端开发必看:零代码实现存量服务改造成MCP服务
本文介绍如何通过 **Nacos** 和 **Higress** 实现存量 Spring Boot 服务的零代码改造,使其支持 MCP 协议,供 AI Agent 调用。全程无需修改业务代码,仅通过配置完成服务注册、协议转换与工具映射,显著降低改造成本,提升服务的可集成性与智能化能力。
3096 1
|
存储 缓存 自然语言处理
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
399 8
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
|
11月前
|
安全 Java Nacos
0代码改动实现Spring应用数据库帐密自动轮转
Nacos作为国内被广泛使用的配置中心,已经成为应用侧的基础设施产品,近年来安全问题被更多关注,这是中国国内软件行业逐渐迈向成熟的标志,也是必经之路,Nacos提供配置加密存储-运行时轮转的核心安全能力,将在应用安全领域承担更多职责。
|
11月前
|
存储 SQL 前端开发
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发
本节以“账本”为例,使用关系型数据库接口实现账单的增、删、改、查操作。通过创建ArkTSRdb应用,演示如何操作RdbStore进行数据管理,并结合界面按钮实现交互功能。
555 0
跟老卫学HarmonyOS开发:ArkTS关系型数据库开发

热门文章

最新文章