下载此文档

实验8 存储过程和触发器.pdf


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
该【实验8 存储过程和触发器 】是由【青山代下】上传分享,文档一共【5】页,该文档可以免费在线阅读,需要了解更多关于【实验8 存储过程和触发器 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..存储过程和触发器1掌握通过企业管理器和Transact—SQL语句和CREATEPRODCEDURE创建存储过程的方法和步骤。—SQL语句和EXECUTE执行存储过程的方法。—SQL语句CREATETRIGGER创建触发器的方法和步骤。。。,命名事物的创建方法,不同类型的事务的处理情况。二、。—SQL语句的基本语法。、执行、修改和删除存储过程的基本语法。。—SQL语句基本用法。、修改和删除触发器的Transact—SQL语句的用法。,处理事务的方法和过程。。三、,创建一个利用流控制语句的存储过程lletters_print,该存储器能显示26个小写字母。单击查询分析器的“执行查询”按钮,。CREATEPROCEDUREletter_******@******@count=******@count<26BEGINPRINTCHAR(ASCII(a’)+***@count)******@count=***@count+1ENDEXECletter_print:..stu_info,执行时通过输入姓名,可以查询该姓名对应的学生的各科成绩。使用EXECUTE命令执行存储过程stu_info,其参数值为“马东”。如果存储过程stu_info执行时没有提供参数,能按默认值查询(设姓名为“刘卫平”),如何修改该过程的定义?CREATEPROCEDUREstu_******@namevarchar(40),姓名,课程编号,==***@nameGOEXECUTEstu_info'马东'在创建系统存储过程后,插入默认值约束DEFAULT,语法:DEFAULT'刘卫平',curriculm表、grade表。(1)创建一个存储过程stu_grade,查询学号为0001的学生的姓名,课程名称,分数。(2)执行存储过程stu_grade,查询0001学生的姓名,课程名称,分数。(3)使用系统存储过程sp_rename将存储过程stu_grade更名为stu_g.(1),,,curriculum,=0001(2)EXECUTEstu_grade(3)EXECsp_rename'stu_grade','stu_g',curriculm表、grade表。(1)创建一个带参数的存储过程stu_p_g,当任意输入一个学生的姓名时,将从3个表中返回该学生的学号,选修的课程名称和课程成绩。(2)执行存储过程stu_g_p,查询“刘卫平”的学号,选修课程和课程成绩。(3)使用系统存储过程sp_helptext,查看存储过程stu_p_g的文本信息。(1)CREATEPROCEDUREstu_p_******@stu_namevarchar(40)AS:..SELECTstudent_info.,,,curriculum,=***@stu_name(2)EXECUTEstu_p_g'刘卫平'(3)EXECsp_help_text'stu_p_g'。(1)创建一个加密的存储过程stu_en,查询所有男学生的信息。(2)执行存储过程stu_en,查看返回学生情况。(3)使用Transact—SQL语句DROPPROCEDURE删除存储过程stu_en。(1)CREATEPROCEDUREstu_enWITHENCRYPTIONASSELECT*FROMstudent_infoWHERE性别='男'(2)EXECUTEstu_en(3)。(1)创建一个存储过程stu_g_r,当输入一个学生学号,通过返回输出参数获取该学生各门课程的平均成绩。(2)执行存储过程stu_g_r,输入学号0002。(3)使用Transact—SQL语句DROPPROCDURE删除存储过程stu_en.(1)CREATEPROCEDUREstu_g_******@stu_idchar(4)***@avg_******@avg_grade=AVG(分数)FROMgradeWHERE学号=***@stu_idGO(2):..EXECUTEstu_g_r'0002'(3)DROPPROCstu_g_r7输入以下代码,复制student_info表命名为stu2,为stu2表创建一个触发器stu_突然,当stu2表插入一条记录时,为该记录生成一个学号,该学号为学号列数据的最大值加1。执行以上代码,查看studentsdb数据库中是否有stu2表,展开stu2,查看其触发器项中是否有stu_str触发器。在查询分析器的编辑窗口输入以下代码:INSERTINTOstu2(学号,姓名,性别)VALUE(‘0001’,‘张主’,‘女’)运行以上代码,查看stu2表的变化情况,为什么插入记录的学号值发生了变化?SELECT*INTOstuFROMstudent_infoGOCREATETRIGGERstu_******@max+1UPDATEstu2SET学号=REPLICATE(’0’,4—len(***@max))+***@=(学号,姓名,性别)VALUE('0001','张主','女')GO8。为grade表建立一个名为insert_g_tr的INSERT触发器,当用户向grade表中插入记录时,如果插入的是在curriculm表中没有的课程编号,则提示用户不能插入记录,否则提示记录插入成功。请进行插入测试,分别输入以下数据:学号课程编号分数0004000037600050000769观察插入数据时的运行情况,说明什么?CREATETRIGGERinsert_g_trONdbo.******@ErrNoint,***@ErrMsgvarchar(255)ifexists(select课程编号frominsertedwhere课程编号='')******@errno=33333,***@errmsg='课程编号不可为空!!'gotoerrorend:..RETURNerror:******@******@errmsg9为curriculum表创建一个名为del_c_tr的DELETE触发器,该触发器作用是禁止删除curriculum表中的记录。CREATETRIGGERdel_s_trBEFOREDELETEonStudent_infoFOReachrowBEGINraise_application_error(-20001,'不能删除此表中的记录');。。

实验8 存储过程和触发器 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人青山代下
  • 文件大小370 KB
  • 时间2024-04-14