ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:99.78KB ,
资源ID:412558      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/412558.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库实验报告4分析解析.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库实验报告4分析解析.docx

1、数据库实验报告4分析解析华中敏 2012221104210052 2012级计科一班存储过程的创建和使用1:创建一个名称为“StuInfo”的存储过程,要求完成以下功能:在T_STUDENT表中查询05541班学生的学号、姓名、性别、出生日期和政治面貌五个字段的内容。CREATE PROCEDURE StuInfo ASSelect S_NUMBER AS 学号, S_NAME AS 姓名, SEX AS 性别, BIRTHDAY AS 出生日期, POLITY AS 政治面貌FROM T_STUDENTWHERE LEFT(S_NUMBER,5)=055412:创建一个存储过程StuScor

2、eInfo,完成的功能是在表T_STUDENT、表T_COURSE和表t_SCORE中查询以下字段:班级、学号、姓名、性别、课程名称、考试分数。-打开STUDENT数据库USE STUDENT -查询是否已存在此存储过程,如果存在,就删除它IF EXISTS (SELECT name FROM sysobjects WHERE name = StuScoreInfo AND type = P) DROP PROCEDURE StuScoreInfo GO -创建存储过程 CREATE PROCEDURE StuScoreInfo AS Select 班级=SUBSTRING(T_STUDENT

3、.S_NUMBER,1, LEN(T_STUDENT.S_NUMBER)-2), 学号=SUBSTRING(T_STUDENT.S_NUMBER, LEN(T_STUDENT.S_NUMBER)-1,2), T_STUDENT.S_NAME AS 姓名, SEX AS 性别, T_COURSE.C_NAME AS 课程名称, T_SCORE.SCORE AS 考试分数 FROM T_STUDENT,T_COURSE,T_SCORE WHERE T_STUDENT.S_NUMBER=t_SCORE.S_NUMBER AND T_COURSE.C_NUMBER=t_SCORE.C_NUMBER G

4、O3:创建一个带有参数的存储过程Stu_Info,该存储过程根据传入的学生编号,在T_STUDENT中查询此学生的信息。-删除已存在的存储过程USE Student_backIF EXISTS (SELECT name FROM sysobjects WHERE name = Stu_Info AND type = P) DROP PROCEDURE Stu_InfoGO-创建存储过程USE Student_backGOCREATE PROCEDURE Stu_Info S_NUMBER varchar(10)AS Select 班级=SUBSTRING(T_STUDENT.S_NUMBER,

5、1,LEN(T_STUDENT.S_NUMBER)-2), 学号=SUBSTRING(T_STUDENT.S_NUMBER,LEN(T_STUDENT.S_NUMBER)-1,2), S_NAME AS 姓名, SEX AS 性别, BIRTHDAY AS 出生日期, POLITY AS 政治面貌FROM T_STUDENTWHERE S_NUMBER=S_NUMBERGO4:创建一个带有参数的存储过程Stu_Age,该存储过程根据传入的学生编号,在T_STUDENT中计算此学生的年龄,并根据程序的执行结果返回不同的值,程序执行成功,返回整数0,如果执行出错,则返回错误号。USE Studen

6、t_backIF EXISTS (SELECT name FROM sysobjects WHERE name = Stu_Age AND type = P) DROP PROCEDURE Stu_AgeGO-创建存储过程USE Student_backGOCREATE PROCEDURE Stu_Age S_NUMBER varchar(10), Age int OUTPUTAS -定义并初始化局部变量,用于保存返回值DECLARE ErrorValue intSET ErrorValue=0-求此学生的年龄SELECT Age=YEAR(GETDATE()-YEAR(BIRTHDAY) F

7、ROM T_STUDENTWHERE S_NUMBER=S_NUMBER-根据程序的执行结果返回不同的值IF (ERROR0) SET ErrorValue=ERRORRETURN ErrorValueGO5:行前面创建的StuInfo存储过程,它是一个无参的存储过程。USE Student_backGOStuInfo6:存储过程StuScoreInfo。USE Student_backEXEC StuScoreInfo7:执行存储过程Stu_Info,该存储过程有一个输入参数“学号”,在执行时需要传入一个学号值。USE Student_backGOEXECUTE Stu_Info S_NUM

8、BER=05541018:执行存储过程Stu_Age,该存储过程有一个输入参数“学号”,另外,还有一个输出参数Age。存储过程执行完后,有一个返回的状态值,这个值可以从变量ErrorValue得到。USE Student_backGODECLARE stuAge int, ReturnValue int, S_NUMBER char(10)SET S_NUMBER=0554101EXECUTE ReturnValue=Stu_Age S_NUMBER,stuAge OUTPUTPRINT 本程序的执行结果:PRINT 程序的返回值=+CAST(ReturnValue AS char(2)PRI

9、NT 学号为+RTRIM(S_NUMBER)+的学生的年龄是+CAST(stuAge AS char(2)+岁。9:使用系统存储过程查看Stu_Age存储过程的参数及其数据类型。USE Student_backGOsp_help Stu_AgeGO10:使用系统存储过程查看StuScoreInfo存储过程的相关的数据库对象。USE Student_backGOsp_depends StuScoreInfoGO11:修改前面创建的Stu_Info存储过程,使之完成以下功能:根据传入的学号,在表T_STUDENT、表T_COURSE和表t_SCORE中查询此学生的班级、学号、姓名、性别、考试课程名

10、称和考试分数。USE Student_backGOALTER PROCEDURE Stu_Info S_NUMBER varchar(10)AS Select 班级=SUBSTRING(T_STUDENT.S_NUMBER,1,LEN(T_STUDENT.S_NUMBER)-2), 学号=SUBSTRING(T_STUDENT.S_NUMBER,LEN(T_STUDENT.S_NUMBER)-1,2), T_STUDENT.S_NAME AS 姓名, SEX AS 性别, T_COURSE.C_NAME AS 课程名称, SCORE AS 考试成绩FROM T_STUDENT,T_COURSE

11、,t_SCOREWHERE T_STUDENT.S_NUMBER=S_NUMBERAND T_STUDENT.S_NUMBER=t_SCORE.S_NUMBERAND T_COURSE.C_NUMBER=t_SCORE.C_NUMBERGO-执行修改后的Stu_Info存储过程:USE Student_backGOEXEC Stu_Info 0554101GO12:使用系统存储过程将Stu_Info存储过程的名称修改为Stu_Info_SCORE。USE Student_backGOSp_rename Stu_Info, Stu_Info_SCOREGO13:使用DROP命令删除StuInfo

12、和StuScoreInfo两个存储过程。USE Student_backGODROP procedure StuInfo, StuScoreInfoGO实验五:触发器的创建和使用1:创建一个INSERT触发器“TR_Stu_Insert”,当在T_STUDENT表中插入一条新记录时,触发该触发器,并给出“你插入了一条新记录!”的提示信息。 - =- Template generated from Template Explorer using:- Create Trigger (New Menu).SQL- Use the Specify Values for Template Paramet

13、ers - command (Ctrl-Shift-M) to fill in the parameter - values below.- See additional Create Trigger templates for more- examples of different Trigger statements.- This block of comments will not be included in- the definition of the function.- =SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO- =- Auth

14、or: Name- Create date: - Description: - =CREATE TRIGGER dbo.TR_Stu_Insert ON dbo.T_STUDENT AFTER INSERTAS BEGIN - SET NOCOUNT ON added to prevent extra result sets from - interfering with SELECT statements. SET NOCOUNT ON;DECLARE msg char(30) SET msg=你插入了一条新记录! PRINT msg - Insert statements for trigger hereENDGO2:创建了Stu_Insert触发器后,查看向T_STUDENT表中插入数据时,此触发器所完成的功能。USE Student_backGOinsert

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1