第八章数据库编程讲义.ppt

  1. 1、本文档共85页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例 当删除表student中的记录时,自动删除表sc中对应学号的记录。 CREATE TRIGGER students.tr_student_sc_delete ON students.student AFTER DELETE AS BEGIN DECLARE @sno char(10) Select @sno=deleted.sno from deleted Delete students.sc where sno=@sno END INSTEAD OF触发器实例 在student表删除学生记录的同时删除学生的选课记录 Create TRIGGER [students].[tr_student_instead] ON [students].[student] instead of DELETE AS BEGIN delete students.sc where sno in ( select deleted.sno from deleted ) delete students.student where sno in ( select deleted.sno from deleted ) END DML触发器执行过程 INSTEAD OF触发器 AFTER/FOR触发器 Q A 练习 1、编写一个存储过程,在sc表统计每个学生的平均分。 2、对练习1的存储过程进行改进,添加一个输入参数——学号,使存储过程能根据输入的学号计算该学生的平均分。 3、在练习2的基础上添加一个输出参数——平均分,计算指定学号的平均分,然后将平均分输出。 2. 执行存储过程 语法格式: 例3 执行例1 的存储过程 例4 执行例2的存储过程 EXEC|EXECUTE [ @return_status = ] [schema_name.]procedure_name [[@parameter =] {value | @variable [OUTPUT] | [ DEFAULT ]}][ ,...n ] exec students.proc_insert_student 200901031,张三,男,18,软件学院 declare @avg int set @avg = 0 exec students.proc_avergrade 200215121,@avg out select @avg 3. 删除存储过程 删除存储过程可以使用DROP命令,DROP命令可以将一个或者多个存储过程或者存储过程组从当前数据库中删除,其语法形式如下: drop procedure {procedure_name}[,…n] 第八章 数据库编程 第一节 T-SQL编程基础 第二节 游标 第三节 存储过程 第四节 自定义函数 第五节 触发器 第四节 自定义函数 SQL Server 2005支持3种类型的Transact-SQL用户自定义函数:标量函数、内嵌表值函数和多语句表值函数。 在SQL Server中使用用户自定义函数有以下优点: 允许模块化程序设计。 执行速度更快。 减少网络流量 1、标量函数 创建语法: CREATE FUNCTION [ schema_name.] function_name ([{ @parameter_name [ AS ] data_type [ = default ] } [ ,...n ]]) RETURNS return_data_type [ WITH ENCRYPTION|SCHEMABINDING [ ,...n ] ] [ AS ] BEGIN function_body RETURN scalar_expression END 2、内嵌表值函数 创建语法: CREATE FUNCTION [ schema_name. ] function_name ([{ @parameter_name? data_type [ = default ] } [ ,...n ]]) RETURNS TABLE [ WITH function_option [ ,...n ] ] [ AS ] RETURN ( select_stmt ) 3、多语句表值函数 创建语法: CREATE FUNCTION [ schema_name. ] function_name ([{@parameter_name? data_type [ = default ] } [ ,...n ]]) RETURNS @return_variabl

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档