学习随笔一:低代码开发与 SQL 核心知识

news/2025/10/15 17:35:53/文章来源:https://www.cnblogs.com/2160912122qq/p/19143878

一、低代码软件开发:
低代码平台通过可视化与模型驱动,重塑了传统软件开发流程。其核心可归纳为三个紧密衔接的阶段,确保从概念到上线的流畅与高效。

(一)低代码开发核心三阶段

以下流程图清晰地展示了这三个阶段的流转与核心任务:

deepseek_mermaid_20251015_e14dcc

  1. 设计阶段:奠定基石
  • 原型界面设计 (“设计即开发”):在需求沟通的同时,利用平台工具快速搭建出可交互的UI“架子”。此原型并非静态设计稿,而是可直接继承至开发阶段的真实界面,从根本上避免了设计与开发的脱节。

  • 数据库建模:规划稳健的数据结构是业务完整的保障。

  • 模型类型:区分字典表(存储稳定的基础分类)与事务性表(承载核心业务数据)。

  • 字段规划:明确主键(唯一标识)、维键(用于查询筛选的描述性字段)与度量字段(可计算的数值)。

  • 关联设计:建立表间关系,确保数据一致性与业务逻辑完整。

  1. 开发阶段:可视化快速构建
  • 核心活动:通过拖拽配置方式,将前端界面与后端数据模型、业务逻辑进行绑定。

  • 质量保障:结合随时测试,形成“开发-测试-反馈-调整”的快速闭环,及时发现问题,降低修改成本,保障最终质量。

  1. 发布部署阶段:一键交付
  • 简化流程:基于统一的平台底座,实现无需编译打包的一键发布。

  • 核心价值:消除了环境差异,简化了传统复杂流程,实现快速、可靠的上线。

(二)解决方案设计说明书:
该文档是低代码项目中承上启下的关键产出物。

  • 功能概述:基于需求用例与原型,串联业务全链路。明确功能交互(保存、提交)、前端逻辑(字段校验、默认值)与后端逻辑(数据计算、提交处理)。

  • 原型说明:详细定义页面类型(如列表页、步骤条式录入页)及每个组件的属性(类型、是否必填等),为开发与测试提供明确、统一的依据。

(三)与敏捷开发的完美融合

低代码平台是实践敏捷开发理念的绝佳载体。

  • 需求响应:需求调研与原型设计同步,快速响应变化。

  • 迭代基础:数据模型与解决方案说明书为Sprint规划提供了清晰依据。

  • 质量与效率:可视化的开发方式结合随时测试,使得在迭代中完善UI、逻辑与交互成为可能,最终通过自动化测试保障每个迭代的交付质量,实现高效、持续的交付与优化。

二、SQL核心知识精要
(一)数据类型:数据的容器与约束

1.字符串类型

CHAR(n):定长字符串,长度不足时用空格填充。适用于长度固定的数据(如身份证号)。

VARCHAR(n):变长字符串,按实际内容存储,节省空间。适用于大多数文本字段。

VARBINARY(n):用于存储二进制字节数据。

2.数值类型

INTEGER/INT:整数。

DECIMAL(p, s)/NUMERIC(p, s):精确小数。p为精度(总位数),s为标度(小数位数),如DECIMAL(10,2)可存储12345678.99。NUMERIC在多数数据库中与之功能相同。

3.日期时间类型

DATE:仅存储年月日。

TIME:仅存储时分秒。

DATETIME/TIMESTAMP:存储年月日时分秒。TIMESTAMP通常与时区相关,范围较小。

4.布尔类型
多数数据库无原生BOOLEAN类型,常用替代方案:

MySQL:TINYINT(1) (1/0)

Oracle:CHAR(1)('Y'/'N')

SQL Server: BIT (1/0)

5.域(Domain)
一种自定义数据类型,可附加检查约束,用于保障数据完整性。例如,可创建一个PositiveSalary域,限制其值必须大于0。

(二)数据操作:增、改、删的要点

1.插入数据 (INSERT)

  • 基础语法:
    INSERT INTO 表名 (字段1, 字段2) VALUES (值1, 值2);

  • 批量插入:可使用多个值列表,或用INSERT INTO ... SELECT ...从查询结果导入。

  • 注意:字符和日期值需用单引号包围;可显式插入NULL。

2.更新数据 (UPDATE)

  • 基础语法:
    UPDATE 表名 SET 字段1 = 新值1, 字段2 = 新值2 WHERE 条件;
  • 核心警告:务必谨慎使用WHERE子句。若无WHERE条件,将更新表中全部数据行,极易造成数据事故。

3.**删除数据 **(DELETE vs TRUNCATE)

  • 基础语法(DELETE):
    DELETE FROM 表名 WHERE 条件;

  • 可回滚,但无WHERE条件时会清空整个表。

  • 受外键约束限制:若某行被其他表引用,则删除可能失败。

  • 基础语法(TRUNCATE):
    TRUNCATE TABLE 表名;

  • 直接清空表格,不可回滚,执行效率高。

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

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

相关文章

firewalld和iptables的区别与应用

firewalld 和 iptables 都是 Linux 系统中用于配置网络防火墙的工具,它们都基于内核的 netfilter 框架来过滤网络流量,但在设计理念、配置方式和使用体验上有显著区别。 以下是两者的主要区别:1. 架构与设计理念特性…

视觉定位引导劈刀修磨系统赋能芯片封装

在芯片制造的引线键合工序中,劈刀如同精密的“缝纫针”,负责将微细的金线、银线等准确地连接在芯片和基板之间。劈刀修磨是芯片制造中一项看似微小却至关重要的环节,它是一项对精度要求极高的微细加工,其同轴度精度…

@wraps(func)

@wraps(func) 是 Python 标准库 functools 模块提供的一个装饰器,主要用于保留被装饰函数的元信息(metadata)。当我们使用自定义装饰器包装函数时,被装饰后的函数会丢失原函数的名称、文档字符串等信息,而 @wraps…

antdx 如何接入dify

antdx 如何接入difyimport { UserOutlined } from @ant-design/icons; import { Bubble, Sender, useXAgent, useXChat } from @ant-design/x; import { Flex, type GetProp } from antd; import React from react;con…

递归函数的精确时间统计

import time from functools import wrapsdef recursion_timer(func):"""装饰器:用于统计递归函数的总执行时间"""# 闭包变量:跟踪是否已经开始计时和开始时间is_timing = Falsestart…

[HZOI]CSP-S模拟32

CSP-S模拟32 今天打的要睡着了,根本没有大脑可以思考小 Z 专场!(是谁不重要,无限 %%% )T1 小 Z 爱计数 是 签到题 ,差点挂掉的签到题。 题意:有三种操作(+1、-1、归零),给定 n 个询问,问存不存在一种情况满足…

大素材毕业设计选题推荐-基于大数据的全球经济指标数据分析与可视化环境-Hadoop-Spark-数据可视化-BigData

大素材毕业设计选题推荐-基于大数据的全球经济指标数据分析与可视化环境-Hadoop-Spark-数据可视化-BigData2025-10-15 16:52 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: n…

D. MAD Interactive Problem

View PostD. MAD Interactive ProblemD. MAD Interactive Problem Problem - D - Codeforces 我们可以进行如下操作: ① 从左到右将 \(i(1 \le i \le 2n)\) 放入 \(s\),然后查询 \(s\),如果答案是某个数字,那么 \(…

在 gitea 服务器端查询 lfs 文件占用情况

1、使用数据库管理工具打开 gitea 的数据库(如 sqlite 模式下:db/gogs.db) 2、执行以下 SQL 语句: SELECTr.owner_name || / || r.name AS repo_name,m.oid,printf(%.2f MB, m.size / 1024.0 / 1024.0) AS size_mb…

HDR图像生成算法详解

HDR技术概述 高动态范围(HDR)图像生成是通过合成多张不同曝光度的图像,来捕捉超出传统显示设备范围的亮度信息。以下是主要的HDR生成算法及其MATLAB实现。 HDR成像基本原理 动态范围定义 动态范围 = 最大可记录亮度…

Introduction: Why Optimization?

在接触凸优化课程当中十分感到头疼,所以在网上搜寻各种资源,发现一位前辈撰写的自己学习凸优化的过程。我的凸优化学习之路 | 韩鼎の个人网站于是想也要慢慢啃下这块难啃的骨头。 引言:为什么要优化? 主要原因是在…

基于MATLAB的二自由度机械臂PID控制仿真

一、动力学建模(拉格朗日方程) 1. 机械臂参数定义 % 机械臂参数(单位:kgm) m1 = 2.0; m2 = 1.5; % 连杆质量 l1 = 0.8; l2 = 0.6; % 连杆长度 I1 = 0.16; I2 = 0.063; % 转动惯量 g = 9.81; % 重力加速度2. 正运动…

Spring AOP原理

目录1. AOP核心概念2. 动态代理机制(1)JDK动态代理(2)CGLIB动态代理3. AOP执行流程4. 与AspectJ的关系总结 Spring AOP(面向切面编程)是Spring框架的核心特性之一,它基于动态代理和字节码增强技术实现,能够在不…

Azure VM (46) 分布式tcping监控

Azure VM (46) 分布式tcping监控《Windows Azure Platform 系列文章目录》具体的项目在我的github里:https://github.com/leizhang1984/pingmesh

Ventoy引导Kali live USB持久化

Ventoy 引导 Kali Live USB 持久化Ventoy 引导 Kali Live USB 持久化Ventoy 介绍 使用 Ventoy 替代 ISO 写盘 Ventoy 数据持久化插件简述 创建 Live 系统持久化文件 创建数据交换分区参考Ventoy 介绍 以下介绍来自 Ven…

知识库管理工具深度测评:ONES、Confluence 等10款工具全面对比

在数字化转型浪潮下,企业越来越重视知识资产的沉淀与共享。根据 Gartner 发布的《Knowledge Management Market Guide 2024》,全球超过85%的中大型组织已经采用知识库管理工具(Knowledge Base Management Tools)来…

从SGD到AdamW:深度学习优化器演进全解析与实践指南

从SGD到AdamW:深度学习优化器演进全解析与实践指南从SGD到AdamW:深度学习优化器演进全解析与实践指南 摘要 在深度学习中,优化器(Optimizer)是连接模型与数据的桥梁,它负责根据损失函数的梯度来更新模型的参数,…

【面试题】人工智能工程师高频面试题汇总:循环神经网络篇(题目+答案)

后台私信雯雯老师,备注:循环神经网络,领取更多相关面试题 随着人工智能技术的突飞猛进,AI工程师成为了众多求职者梦寐以求的职业。想要拿下这份工作,面试的时候得展示出你不仅技术过硬,还得能解决问题。所以,提…

做了个手机上的“视频播放器”,获益匪浅

先上代码再解释踩过的坑。<html><head><meta charset="UTF-8"> <meta name="screen-orientation" content="landscape"> <meta name="viewport" …

CEF关闭流程

整理了一下之前写的cef推荐的关闭流程的文档 参考文档和实际demo来看,关闭流程离屏渲染和非离屏渲染时不同的,主要区别在于非离屏渲染有一个cef自建的窗口,非离屏渲染的退出和这个窗口密切相关。 CefBrowserHost::T…