网站大量收购闲置独家精品文档,联系QQ:2885784924

SQLServer與数据库应用开发平台.pptVIP

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQLServer與数据库应用开发平台

9.2.7 案例中的触发器 1.创建一个INSERT触发器 在TestDB数据库中建立一个名为insert_xibu的INSERT触发器,存储在“tb_class”表中。当用户向“tb_class”表中插入记录时,如果插入的是“tb_dept”表中没有的系部代码,则提示用户不能插入记录,否则提示记录插入成功。 代码如下: USE TestDB GO IF EXISTS(SELECT name FROM sys.objects WHERE name=Ninsert_xibu AND type=tr) DROP TRIGGER insert_xibu GO CREATE TRIGGER insert_xibu ON tb_class FOR INSERT AS 9.2 触发器 DECLARE @XIBU CHAR(10) SELECT @XIBU=tb_class.dept_num FROM tb_class,inserted WHERE tb_class.dept_num=inserted. dept_num IF @XIBU PRINT(记录插入成功) ELSE BEGIN PRINT(系部代码不存在tb_class表中,不能插入记录,插入将终止!) ROLLBACK TRANSACTION END GO 2.创建一个DELETE触发器 在TestDB数据库中建立一个名为del_zhuanye的DELETE触发器,存储在“tb_dept”表中。当用户删除“tb_dept”表中的记录时,如果“tb_class”表中引用了此记录的“dept_num”,则提示用户不能删除记录,否则提示记录已经删除。 9.2 触发器 代码如下: USE TestDB GO CREATE TRIGGER del_zhuanye ON tb_dept FOR DELETE AS IF(SELECT COUNT(*) FROM 班级INNER JOIN DELETED ON tb_class.dept_num=DELETED.dept_num)0 BEGIN PRINT(该专业被班级表引用,你不可以删除此条记录,删除将终止) ROLLBACK TRANSACTION END ELSE PRINT(记录已删除) GO 9.2 触发器 3.创建一个UPDATE触发器 在TestDB数据库中建立一个名为update_xibu的UPDATE触发器,存储在“tb_class”表中。当用户更新“tb_class”表中的“dept_num”时,提示用户不能修改系部编号。 代码如下: USE TestDB GO CREATE TRIGGER updatel_xibu ON tb_class FOR UPDATE AS IF UPDATE(dept_num) BEGIN PRINT(‘不能修改系部编号) ROLLBACK TRANSACTION END GO 9.2 触发器 见习题与答案 习题 * * 【例9.10】利用sp_addlogin命令建立一个名为user01的登录用户。 代码如下: USE master GO EXEC sp_addlogin user01 运行后提示创建。需要注意的是,在没有指定用户密码和默认数据库的时候,创建的用户默认数据库是master,默认的密码是NULL。 【例9.11】利用sp_addtype命令创建新的用户自定义数据库类型user_date,该类型为datetime数据类型。 代码如下: EXEC sp_addtype user_date,datetime 运行结果为类型已添加。 9.1 存储过程综述 【例9.12】使用sp_monitor显示CPU、I/O的使用信息。 代码如下: USE master GO EXEC sp_monitor GO 执行后返回如图9-7所示的结果集, 该结果报告了当时有关SQL Server 繁忙程度的信息。 9.1 存储过程综述 图9-7 执行sp_monitor的结果 V9-1-10 使用系统存储过程.wmv 2.扩展存储过程 扩展存储过程是允许用户使用一种编程语言(如C语言)创建的应用程序,程序中使用SQL Server开放数据服务的API函数,直接可以在SQL Server地址空间中运行。用户可以像使用普通的存储过程一样使用它,同样也可以将参数传给它并返回结果和状态值。 扩展存储过程编写好后,可以由系统管理员在SQL Server中注册登记,然后将其执行权限授予其他用户。扩展存储过程只能存储在master数据库中。下面通过几个例子,介绍扩展存储过程的创建和应用实例。 【例9.13】使用sp_addextendpro

文档评论(0)

1234554321 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档