下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库原理实验报告(三)成绩实验名称数据库编程姓名学号班级实 验 内 容(1) 了解存储过程、函数和触发器的作用; 实验 (2)熟悉使用命令创建存储过程的方法; 目的 (3)熟悉使用命令创建函数的方法;(4)熟悉使用命令创建触发器的方法。(1)创建一个函数,以工程号为参数,返回该工程所在的城市,如果没 有该工程,返回“无此工程”。create fun cti on ret_city(j nochar(2)retur nschar(20)asbegi ndeclare city char(20);if not exists (select * from jwhere jno= jno)set c
2、ity='无此工程';elseselect city=city from jwhere jno= jno;return city ;end(2) 创建一个函数,以供应商号为参数,返回该供应商供应零件的总数量。如果不存在该供应商,则返回-100。create fun cti on ret_sl(s nochar(2)returns intasbegi ndeclare total_qty int ;if not exists (select * from swhere sno= sno)set total_qty=-100 ;elseselect total_qty =sum(q
3、ty) from spjwhere sno= sno;return total_qty ;end(3) 创建一个存储过程,以供应商号、工程号、零件号、供应量为参数, 在SPk表中插入一条记录,如果该记录已存在,显示“记录已存在! ”, 否则显示“插入成功! ”。Create PROCEDURE in sert_1 sno char(2),p no char ,j nochar ,qty intASbegi nif exists (select * from spj where sno= sno and pno=pno and jno= jno and qty=qty)Print 记录已存在!&
4、#39;elsebeg inin sert into spj values(s no,p no,j no,qty);print '插入成功!endend(4) 创建一个存储过程,以供应商号、工程号、零件号、供应量(新)为参数,修改SPJ表中某供应商给某工程供应某零件的供应量为新供应量,如果不存在该记录,则显示“无此记录!”,否则显示“修改成 功! ”。Create PROCEDURE update_1 s no char(2),p no char(2),j no char ,qty intASbegi nif not exists (select * from spj where sn
5、o= sno and pno= pno and jno= jno)Print无此记录!'elsebeg inupdate spj set qty=qty where sno= sno and pno= pno and jno= jno;print '修改成功!'endend(5) 创建一个存储过程,以工程号为参数,删除J表及SPJ表中相应的记录,如果不存在该工程,显示“无此工程! ”;如果该工程没有零 件供应记录,显示“该工程没有供应记录,J表中记录已删除! ”;如果该工程有零件供应记录,显示“已删除J表及SPJ表中的记录! ”。Create PROCEDURE del
6、ete_1 jno char(2)ASbegi nif not exists (select * from j where jno= jno) Print无此工程!'elseif not exists (select * from spj where jno= jno)beg indelete from j where jno= jno;print'该工程没有供应记录,J表中记录已删除!endelsebeg indelete from spj where jno= jno;delete from j where jno= jno;print '已删除J表及SPJ表中的记
7、录!endend(6)创建入库表出库表上的六个触发器。入库修改:create trigger updat_rk on tab_rkfor updateasbegi ndeclare old_spbh intdeclare old_rksl intdeclare n ew_spbh intdeclare n ew_rksl intselect old_spbh=spbh from deletedselect old_rksl=rksl from deletedselect n ew_spbh=spbh from in sertedselect n ew_rksl=rksl from in sertedif old_spbh=n ew_spbh and old_rksl!=n ew_rksl begi nupdate tab kc set kcl=kcl - old rksl + new rkslwhere spbh=n ew_spbh;return;endif old_spbh!=n ew_spbhbegi nupdate tab_kc set kcl=kcl - old_rksl where spbh=old_spbh;if exists(select * from tab_kc where spbh=n e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吊装作业安全试卷测试题及答案
- 2026年贵州省中考英语试题(含答案)
- GB-T 47771-2026《聚丙烯腈纤维生产成套装备的术语、分类及型号编制方法》
- 2026南非矿业资源开发现状调研及经济效益分析
- 2026中国稀土永磁材料导体磁材市场分析及投资策略
- 2026生物制品研发领域市场深度调研及行业创新与投资动态研究报告
- 2026欧洲航空制造业投资规模分析及新兴市场拓展规划报告
- 2026人工智能客服系统应用效果与客户满意度分析报告
- 2026生物科技行业市场供需关系分析及产业发展规划分析报告
- 2026汽车制造行业市场预测趋势深度解析
- 2026年郧西县事业单位公开招聘78名工作人员笔试备考题库及答案详解
- 2026秋新版小学湘科版科学五年级上册教学设计(附目录)适用于新课标
- 2026年飞控算法工程(无人机控制技术)试题及答案
- 山东省菏泽市2025-2026学年高一下学期期末考试英语试卷
- 2026年兽医实验室安全知识培训考试题库(含答案)
- 2025年专利代理师考试真题(完整版)
- 2026年人民检察院书记员招聘考试笔试试题(含答案)
- 2026重庆青年职业技术学院招聘80人备考题库及一套答案详解
- 2026年金华市公安辅警招聘知识考试题库及答案
- LY/T 3426-2025直接为林业生产经营服务工程设施用地规范
- 变电站设备巡视要点
评论
0/150
提交评论