实验目的:进一步了解关于存储过程和触发器的定义及实现

实验名称:存储过程、触发器的定义以及验证

实验内容:完成以下关于存储过程和触发器的定义以及验证。

1.[例7.50] 输入某个同学的学号,统计该同学的平均分。

CREATE PROCEDURE proStudentByNo1(sNo char(7))

BEGIN

SELECT a.studentNo, studentName, avg(score)

FROM Student a, Score b

WHERE a.studentNo=b.studentNo

AND a.studentNo=sNo

GROUP BY a.studentNo, studentName;

END

执行该存储过程:call proStudentByNo1('0800001');

2.输入某个同学的学号,统计该同学的平均分,并返回该同学的姓名和平均分。

CREATE PROCEDURE proStudentByNo21(@sNo char(7), @sName

varchar(20) OUTPUT,  @avg numeric(5, 1) OUTPUT )

AS

BEGIN

SELECT @sName=studentName

FROM Student   WHERE studentNo=@sNo

SELECT @avg=avg(score)

FROM Score   WHERE studentNo=@sNo

GROUP BY studentNo

END

执行存储过程proStudentByNo2 1

DECLARE  @sNamevarchar(20), @avg numeric(5, 1)

EXECUTE proStudentByNo21  '0800001',  @sName OUTPUT,  @avg OUTPUT

SELECT  @sName, @avg

把以上SQLServer版本的存储过程改为MYSQL版本并运行

3. 创建触发器,当输入某个同学选课成绩时,如果他是少数民族人,其成绩自动加5分。

CREATE TRIGGER ScoreIns BEFORE INSERT

ON Score FOR EACH ROW

BEGIN

UPDATE Student SET NEW.score=NEW.score+5

WHERE Student.studentNo=NEW.studentNo

and Student.nation<>'汉族';

END

实验步骤:

首先连接名为scoredbd的数据库,然后新建查询,输入SQL语句,运行。

1. 输入学号为0800001,统计该同学的平均分。SQL语句及运行结果如下:

执行存储过程:

2、输入学号为0800001,统计该同学的平均分,并返回该同学的姓名和平均分。

3. 创建触发器,当输入某个同学选课成绩时,如果他是少数民族人,其成绩自动加5分。

(1)往Score表插入一条记录,要求studentNo值所对应学生在Student表的民族为’汉族’,查看Score表中刚才插入的记录的score值是否有变化。

(2)再往Score表插入一条记录,要求studentNo值所对应学生在Student表的民族为’蒙古族’,查看Score表中刚才插入的记录的score值是否有变化。

存储过程及触发器的实验报告相关推荐

  1. 数据库实验系列之3存储过程和触发器实验(存储过程和触发器)

    存储过程和触发器实验(存储过程和触发器) 实验9:存储过程实验 实验10:触发器实验 本文最初由security9968发布于security9968的csdn博客,禁止任何形式的剽窃行为 转载原创文 ...

  2. SQL触发器总结 - sql server 2012数据库基础-触发器及应用-实验报告

    这是我大三第一学期<数据库基础>这门课的实验报告,总共15个实验,我挑了几个比较重要的放在博客上,方便查看和复习,尤其是最近SSM后端开发,希望对大家,以及将来的我有所帮助! 实验要求 在 ...

  3. 数据库实验 实验七 存储过程与触发器

    注:此内容仅仅只是记录成长与分享学习,不能保证绝对正确 实验七 存储过程与触发器 实验日期: 2022 年 5 月 20 日  星期 五  实验地点: 宿舍 一 实验目的 1. 掌握SQL Serve ...

  4. SQL存储过程总结 - sql server 2012数据库基础-存储过程及应用-实验报告

    这是我大三第一学期<数据库基础>这门课的实验报告,总共15个实验,我挑了几个比较重要的放在博客上,方便查看和复习,尤其是最近SSM后端开发,希望对大家,以及将来的我有所帮助! 本文是存储过 ...

  5. mysql的触发器实验报告_数据库原理实验报告s11-数据库触发器的创建.doc

    数据库原理实验报告s11-数据库触发器的创建.doc 数据库管理系统SQLSERVER实验报告第1页2011年5月4日实验11数据库触发器的建立实验日期和时间20141128实验室软件工程室班级12计 ...

  6. 触发器及其应用实验报告总结_555时基电路及其应用

    一 实验目的 1.熟悉555型集成时基电路结构.原理及其特点. 2.掌握555型集成时基电路的基本应用. 二 实验设备与器件 1. +5V直流电源          2.双踪示波器 3.连续脉冲源   ...

  7. 存储过程、触发器和用户自定义函数实验 (存储过程)

    存储过程.触发器和用户自定义函数实验 实验内容一 练习教材中存储过程.触发器和用户自定义函数的例子.教材中的BookSales数据库,在群共享中,文件名为BookSales.bak. 实验内容二 针对 ...

  8. 数据库原理实验二 数据库管理 实验报告

    广州大学学生实验报告实验二:数据库管理 此篇分享仅供参考学习,图文禁复制,勿作他用!谢谢配合! 数据库原理实验之实验二:数据库管理 软件:Oracle SQL Developer 今天实验才刚开始,花 ...

  9. 【数据库原理实验(openGauss)】实验报告

    <数据库系统原理实验>报告 文章目录 <数据库系统原理实验>报告 一.实验课程性质和教学目标 二.实验课程教学基本要求 三.实验教学内容 实验一 认识DBMS系统 (一)实验目 ...

最新文章

  1. 单元测试框架怎么搭?快来看看新版Junit5的这些神奇之处吧!
  2. Couldn't start MySQL! while starting XAMPP
  3. 正负样本比率失衡SMOTE
  4. 黄聪:VS2010开发T4模版引擎之基础入门
  5. Java实现话术词槽匹配_知识图谱与KBQA——槽填充
  6. 求凸包(两遍扫描,求上下凸包的方法)
  7. 服务器开设虚拟主机,服务器自动开设虚拟主机
  8. 电脑反应慢卡怎么解决_电脑键盘失灵怎么解决
  9. Android 带着用户名的SharedPreferences
  10. python打印字符金字塔_Python教程第7篇:print打印字符串
  11. 微信拍卖_简析微信古玩艺术品拍卖平台的崛起
  12. C向Python正确传递数组的代码
  13. StarUML接口视图修改为类的形式
  14. 人人译视界 for Mac(智能协同翻译)
  15. Ubuntu中的Gif动画录制工具
  16. 华为那些手机有鸿蒙系统,华为鸿蒙系统支持哪些手机 鸿蒙系统支持哪些手机型号...
  17. Java 打印 Excel 表格
  18. 二十四.基于机器学习的入侵检测和攻击识别——以KDD CUP99数据集为例
  19. mmdetection config文件中几个参数的理解(anchor_scales,anchor_ratios,anchor_strides)
  20. linux打不开vlc怎么办下面是解决方法

热门文章

  1. 美国藤校Top30大学对IB成绩的要求
  2. MT8382芯片资料分享 MT8382 相关配置资料下载
  3. 澳国立计算机录取分数,澳洲国立大学均分怎么计算及均分详细要求
  4. 灵飞经3 印神无双 第十五章 绝境逢生 1
  5. C语言|04博客作业
  6. Idea一键自动导包设置--导入类中所有包
  7. android 状态栏隐藏 源码分析,Android 沉寖状态栏与透明状态栏
  8. nacos实现Java和.NetCore的服务注册和调用
  9. Server 2019 WSUS安装详细步骤图解教程
  10. 删除df中值为指定值的行