



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-写存储过程及调用存储过程/*1.写出创建分数存储过程用于计算某门课程成绩最高分、最低分、 平均分,参数课程号。*/-2.写出统计某门课选人数的存储过程,输入参数课程号,输出参数人数。/*3.创建存储过程,要求根据学生姓名查看学生的籍贯. (要求:在存储过程里定义两个参数, 第一个接收由调用程序指定的输入值(学生姓名), 第二个参数用于将该值返回调用程序)*/*4.程序员工资表:ProWage字段名称数据类型说明IDint自动编号,主键PNameChar(10)程序员姓名Wageint工资创建一个存储过程,对程序员的工资进行分析,月薪1500到10000不等,如果有百分之五十的人薪水不到2000元,给所有人加薪,每次加100,再进行分析,直到有一半以上的人大于2000元为止,存储过程执行完后,最终加了多少钱? 例如:如果有百分之五十的人薪水不到2000,给所有人加薪,每次加100元,直到有一半以上的人工资大于2000元,调用存储过程后的结果如图:请编写T-SQL来实现如下功能:查询是否有一半程序员的工资在2200、3000、3500、4000、5000或6000元之上,如果不到分别每次给每个程序员加薪100元,至之一半程序员的工资达到2200,3000,3500,4000,5000或6000元。/*5.编写一个存储过程PR_GET_PASS_RATE统计某门课程的及格率,其传入参数是课程号P_CNO,传出参数是该课程成绩的及格率P_PASSRATE,及格率的格式形如:86.56%。6创建触发器T_1,功能是当向数据表学生添加记录时,显示学生的信息。create trigger T_1 on 学生after insertas select * from 学生insert into 学生 values(3001,李四,男,计本10)7创建触发器T_2,功能是当向数据表班级添加、修改和删除记录时,显示学生的信息。create trigger T_2 on 学生after insert,update,deleteas select * from 学生8创建触发器T_3,功能是当修改班级班号,同步更新学生表的班号。9创建触发器T_4,功能是当删除学生表的记录时,同步删除选课表中的选课信息。create trigger T_4 on 学生after deleteas declare xh char(10)select xh=学号 from deleted delete from 选课 where 学号=xh delete from 学生 where 学号=3002/*1.写出创建分数存储过程用于计算某门课程成绩最高分、最低分、 平均分,参数课程号。*/use xsglgocreate procedure aa(课程名 nchar(16)asbeginselect 课程号,最高分=max(成绩),最低分=min(成绩),平均分=avg(成绩) from 成绩where 课程号 = 课程名group by 课程号endgoexecute aa 001-2.写出统计某门课选人数的存储过程,输入参数课程号,输出参数人数。use xsglgocreate procedure bb 课程号 char(10),人数 int outputasbeginselect 人数=(select count(课程号)from 成绩where 课程号=课程号)enddeclare 人数 int,课程号 char(4)set 课程号=002exec bb 课程号,人数 outputprint 课程号为+课程号+的人数:+cast(人数 as char(2)/*3.创建存储过程,要求根据学生姓名查看学生的籍贯. (要求:在存储过程里定义两个参数, 第一个接收由调用程序指定的输入值(学生姓名), 第二个参数用于将该值返回调用程序)*/use xsglgo create procedure cc(姓名 char(10),籍贯 char(10) output)asbeginselect 籍贯=(select 籍贯 from 学生where 姓名=姓名)enddeclare 姓名 char(10),籍贯 char(10)set 姓名=廖小小exec cc 姓名,籍贯 outputprint 学生+姓名+的籍贯是:+籍贯USE WageGOCREATE TABLE ProWage -程序员工资表( ID int identity(1,1) primary key, -工资编号 PName CHAR(10) NOT NULL , -程序员姓名 Wage int NOT NULL -工资)GO-1、创建存储过程-if exists (select * from sysobjects where name=Sum_wage)drop procedure Sum_wageGOcreate procedure Sum_wage PWage int,AWage int,total intas while (1=1)beginif (select count(*) from ProWage)2*(select count(*) from ProWage where Wage=PWage)update ProWage set total=total+AWage,Wage=Wage+AWageelsebreakendprint一共加薪:+convert(varchar,total)+元print加薪后的程序员工资列表:select * from ProWage-调用存储过程1-exec Sum_wage PWage=2000,AWage=100,total=0exec Sum_wage PWage=2200,AWage=100,total=0exec Sum_wage PWage=3000,AWage=100,total=0exec Sum_wage PWage=4000,AWage=100,total=0exec Sum_wage PWage=5000,AWage=100,total=0exec Sum_wage PWage=6000,AWage=100,total=05:编写一个存储过程PR_GET_PASS_RATE统计某门课程的及格率,其传入参数是课程号P_CNO,传出参数是该课程成绩的及格率P_PASSRATE,及格率的格式形如:86.56%。create or replace procedure PR_passrate_count(p_cno char,P_PASSRATE out char)as v_passcnt int; v_totalcnt int;begin -先求及格人数 select count(*) into v_passcnt from sc where cno=p_cno and grade=60; -若及格人数为0则给出结果 if v_passcnt=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年光储一体化系统在智能电网中的储能技术应用报告
- 2025年康复医学治疗技术(师)考试题库(含答案)
- 考研西医综合699资料(3篇)
- 急救护理学题库名词解释及答案解析
- 净地供地试题及答案
- 桑树栽培工技术考核试卷及答案
- 食品安全管理员试题库及答案解析
- 江山安全员证考试题库及答案解析
- 秩序作业安全知识测试题及答案解析
- 江苏省南京市六校联合体2025-2026学年高三上学期8月学情调研考试政治试卷(解析版)
- 《中国人民站起来了》课件 (共50张)2025-2026学年统编版高中语文选择性必修上册
- 中国企业供应链金融白皮书(2025)-清华五道口
- 医院常用消毒液的使用及配置方法
- 2022英威腾MH600交流伺服驱动说明书手册
- 分期支付欠薪协议书范本
- 2025年中国药典培训试题及答案
- Q-JJJ 9002-2025 铁路建设项目安全穿透式管理实施指南
- 2025年高校教师资格证之高等教育法规题库(综合题)
- 2025至2030中国数字PCR(dPCR)和实时PCR(qPCR)行业发展趋势分析与未来投资战略咨询研究报告
- 《海堤生态化设计技术指南(T-CHES 139-2024)》知识培训
- DB31/T 1013-2016城市轨道交通地下车站环境质量要求
评论
0/150
提交评论