数据库第十二次作业 存储过程(PL/SQL语句集)的应用

简介: 数据库第十二次作业 存储过程(PL/SQL语句集)的应用

       SQL语句没有流程控制语句,无法实现复杂的应用。PL/SQL语言时将结构化查询与数据库过程控制结合为一体的强大语言。PL/SQL不但支持更多的数据类型,拥有变量声明、赋值语句,而且有选择、循环等流程控制语句。存储过程是一组为了完成特定功能的PL/SQL语句集,经编译后存储在数据库中,用户可以重复该存储过程,这样可以降低数据开发人员的工作量。

一、创建一个stu表

mysql> create table stu(
    -> id int (10) primary key not null unique,
    -> name varchar(50) not null,
    -> class varchar(50) not null);

5b840608582a45d1bc7417f8d6cabe71.png

1e7f920ca26e4e249247e9aa22a15d1b.png

二、给stu表添加数据并查看stu表结构

mysql> insert into stu value(1,"Lucy","class1"),
    -> (2,"Tom","class1"),
    -> (3,"Rose","class2");

0f9824c4d8c1456f84818d356051bcdc.png

三、查看stu表数据

82bf1d0ae5374563a41b090680463e87.png

四、创建存储过程addcount能够获取表stu中的记录数和id的和,使用到了变量的声明、光标、流程控制等知识点。

mysql> create procedure addcount(out count int)
    -> begin
    -> declare itmp int;
    -> declare cur_id cursor for select id from stu;
    -> declare exit handler for not found close cur_id;
    -> select count(*) into count from stu;
    -> set @sum=0;
    -> open cur_id;
    -> repeat
    -> fetch cur_id into itmp;
    -> if itmp<10
    -> then set @sum=@sum+itmp;
    -> end if;
    -> until 0 end repeat;
    -> close cur_id;
    -> end;/
Query OK, 0 rows affected (0.02 sec)

9280affbfdd343ba85e4a7f209c34695.png

五、调用存储过程并查看数据

d0e73ad50de2467da46d9e492d73eb77.png

从调用存储过程的结果可以看出,stu表中共有三条数据,id之和为6。这个存储过程创建了一个cur_id的光标,使用这个光标来获取每条记录的id,使用repeat循环语句来实现所有id号相加。        

目录
相关文章
|
10月前
|
存储 人工智能 NoSQL
AI大模型应用实践 八:如何通过RAG数据库实现大模型的私有化定制与优化
RAG技术通过融合外部知识库与大模型,实现知识动态更新与私有化定制,解决大模型知识固化、幻觉及数据安全难题。本文详解RAG原理、数据库选型(向量库、图库、知识图谱、混合架构)及应用场景,助力企业高效构建安全、可解释的智能系统。
|
12月前
|
SQL 机器学习/深度学习 人工智能
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
本文系统性地阐述了自然语言转SQL(NL2SQL) 技术如何让非技术背景的业务分析师实现数据自助查询,从而提升数据驱动决策的效率与准确性。
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
|
11月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
804 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
10月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
456 6
|
11月前
|
存储 弹性计算 Cloud Native
云原生数据库的演进与应用实践
随着企业业务扩展,传统数据库难以应对高并发与弹性需求。云原生数据库应运而生,具备计算存储分离、弹性伸缩、高可用等核心特性,广泛应用于电商、金融、物联网等场景。阿里云PolarDB、Lindorm等产品已形成完善生态,助力企业高效处理数据。未来,AI驱动、Serverless与多云兼容将推动其进一步发展。
545 8
|
12月前
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
1482 8
|
12月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
473 5
|
11月前
|
存储 弹性计算 安全
现有数据库系统中应用加密技术的不同之处
本文介绍了数据库加密技术的种类及其在不同应用场景下的安全防护能力,包括云盘加密、透明数据加密(TDE)和选择列加密。分析了数据库面临的安全威胁,如管理员攻击、网络监听、绕过数据库访问等,并通过能力矩阵对比了各类加密技术的安全防护范围、加密粒度、业务影响及性能损耗。帮助用户根据安全需求、业务改造成本和性能要求,选择合适的加密方案,保障数据存储与传输安全。
|
存储 人工智能 数据库
视图是什么?为什么要用视图呢?数据库视图:定义、特点与应用
本文三桥君深入探讨数据库视图的概念与应用,从定义特点到实际价值全面解析。视图作为虚拟表具备动态更新、简化查询、数据安全等优势,能实现多角度数据展示并保持数据库重构的灵活性。产品专家三桥君还分析了视图与基表关系、创建维护要点及性能影响,强调视图是提升数据库管理效率的重要工具。三桥君通过系统讲解,帮助读者掌握这一常被忽视却功能强大的数据库特性。
2763 0