存储过程与触发器练习_第1页
存储过程与触发器练习_第2页
存储过程与触发器练习_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1. 使用library数据库创建一个存储过程,查询赵良宇的rname和lendnum。2. 为数据库library创建一个多表查询的存储过程,查询出读者为“程鹏”的借阅信息。3. 为数据库library创建一个查询某读者(读者姓名在执行存储过程时给出)借阅情况的存储过程(输入参数型)4. 利用输出参数计算阶乘(例如输入5,求5!)触发器练习:1. 创建基于表“reader”、执行delete操作的after触发器。功能是当删除一名读者之后,给出“数据已被删除!”文字提示。Create trigger a1On readerFor deleteAsBeginPrint 数据被删除!end2.

2、创建insert触发器在数据库library表borrow中插入借阅信息数据时,得到该书的应还日期并将读者表中的借阅数量增加1本Create trigger a2On borrowAfter insertAs BeginDeclare dz char(10),ts char(15),dx int,ts intSet dz=(select rid from inserted)Set ts=(select bid from inserted)Set dx=(select typeid from reader where rid=dz)Update borrowSet sreturndate=len

3、ddate+(select limitdays from readertype where typeid=dx)Where rid=dz and bid=ts and returndate is nullUpdate readerSet lendnum=lendnum+1Where rid=dzEnd3. 创建update触发器在数据库Library中,当读者还书时,实际上要修改表brorrow中相应记录还期列的值,创建触发器并计算出是否过期,以及过期了多少天,同时将读者表reader的借阅数量减1CREATE TRIGGER a3 ON borrow AFTER UPDATE ASDECLA

4、RE days int,dzbh char(10),tsbh char(15)SET dzbh=(select RID from inserted)SET tsbh=(select BID from inserted)SELECT days=DATEDIFF(day, ReturnDate, SReturnDate)FROM borrowWHERE RID=dzbh and BID=tsbhIF days0 PRINT 没有过期!ELSE PRINT 过期+convert(char(6),days)+天Update readerSet lendnum=lendnum-1Where rid=dz

5、bhEnd触发代码:USE LibraryUPDATE borrow SET ReturnDate=2007-12-12WHERE RID= and BID=TP85-08GO4. 创建delete触发器对Library库中Reader表的 DELETE操作定义触发器。检查该读者是否有书没还,若该读者还有书没还则不能被删除。CREATE TRIGGER a4ON ReaderFOR DELETEASDECLARE data_yj intSELECT data_yj=LendnumFROM deletedIF data_yj0 BEGIN PRINT 该读者不能删除!还有+convert(char(2),data_yj)+本书没还。 ROLLBACK ENDELSE PRINT 该读者已被删除!End5. 创建inseated of 触发器为数据库library中表reader的delete操作定义insertead of 触发器。Create trigger a5On readerInstead of deleteAsBeginDeclare data_jy intSelect data_jy=lendnumFrom delet

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论