- 7
- 0
- 约7.24千字
- 约 47页
- 2017-05-19 发布于四川
- 举报
第06章存储过程及触发器
第6章 存储过程、触发器 和数据完整性 6.1 存储过程 6.2 触发器 6.3 数据完整性 6.1 存储过程 基本概念 创建存储过程 例:创建一个最简单的存储过程: 例:带参数的存储过程: 执行存储过程 例:执行带参数的sp_getemp;2存储过程 存储过程的返回值和状态信息 存储过程的修改和删除 修改存储过程的语句是(一般格式): ALTER PROC[edure] procedure_name [ ; number ] [ @parameter data_type [ = default ], …?] AS sql_statement 删除存储过程的语句是: DROP PROC[edure] procedure_name 注意:删除存储过程的语句中不能指定序号。也就是说,该语句将同时删除同名的所有存储过程。 要用好存储过程 6.2 触发器 触发器的用途 触发器是依附于表的数据库对象 一个触发器和三部分内容有关: 定义触发器的表 激活触发器的数据操作语句 触发器要采取的动作 建立触发器的语句 例:建立一个简单的触发器。 插入视图和删除视图 删除类触发器 例:定义一个触发器,使得当删除仓库记录时,同时将所属所有职工记录的仓库号字段值置为空值NULL: 插入类触发器 例:对职工表的插入操作定义一个触发器,使得当插入职工记录时,检查相应的仓库元组是否存在,如果不存在则撤消所做的插入操作。 更新类触发器 例:对职工表的更新操作定义一个触发器,使得当职工变换所属仓库时,检查相应的仓库元组是否存在,如果不存在则撤消所做的更新操作,如果新的仓库号是WH2则将工资提高10%。 6.3 数据完整性 在第3章已经介绍了在关系数据模型上数据完整性的概念和规则;在第5章介绍了CREATE TABLE语句中可以实现的一些完整性约束。这里介绍与数据完整性有关的其他一些内容。 . 6.3.1 规则 在CREATE TABLE语句中可以使用CHECK子句实现一些用户定义完整性或域完整性约束。另外还可以通过“规则”(RULE)来实现用户定义完整性或域完整性。 CHECK约束固定在一个表的一个列上,它只在指定的列上起作用。如果在不同的列上有相同的约束条件,则可以使用规则,一个规则可以绑定在多个列上。 规则是一种独立的数据库对象,它可以绑定到一个列上来约束该列的取值范围等。 建立规则的命令是: CREATE RULE rule AS condition_expression rule:给出新建规则的名称; condition_expression:定义规则的条件,可以是任何有效的表达式,并且可以包含诸如算术运算符、关系运算符和谓词(如IN、LIKE、BETWEEN)之类的元素。 注意:规则不能引用列或其它数据库对象,规则可以包含不引用数据库对象的内置函数;condition_expression需要包含一个变量,变量的前面有一个@前缀;该表达式引用通过 UPDATE或INSERT语句输入或传递的字段值。 例如,规定某类数值对象的取值范围是1000~3000,则可以定义规则: CREATE RULE range_rule AS @range=1000 AND @range=3000 规则的绑定 规则是独立的数据库对象,要通过系统存储过程sp_bindrule把规则绑定到数据列上,该系统存储过程的格式是: sp_bindrule rulename , objname [ , futureonly ] rulename是用CREATE RULE命令建立的规则名; objname指出要绑定的表和列或用户定义的数据类型; futureonly,当绑定规则到用户定义的数据类型时可以选用此项,该选项是禁止已经存在的、用用户定义数据类型定义的列遵循新的规则。 例如,将规则range_rule绑定到职工表的工资列上 sp_bindrule range_rule,‘职工.工资’ 使用CREATE RULE命令创建的规则对象,可以绑定到多个数据列上,即一个规则可以反复使用。 绑定的消除和规则的删除 绑定到数据列上的规则可以去除,相应的系统存储过程是sp_unbindrule。例如,取消绑定在职工表工资列上的规则可以使用如下语句: sp_unbindrule 职工.工资 规则可以删除,删除规则的命令是DROP RULE,但是删除规则之前,必须首先解除所有的绑定。 6.3.2 默认值 在CREATE TABLE命令中可以使用DEFAULT约束为数据列定义默认值。这里介绍另外一种方法:使用CREATE DEFAULT命令创建默认
您可能关注的文档
- 福建3明·永安.ppt
- 福建省2012年高考历史第一第二单元考点3伟大的历史性转折和走向社会主义现代化建设新阶段课件人民版必修2.ppt
- 福建省2012届高考数学文二轮专题总复习课件︰专题8算法初步.ppt
- 福建省2012年高考第三单元考点3西方人文精神的起源及其发展西方人文精神的发展二启蒙运动课件人民版必修3.ppt
- 神奇的海底世界〔5年级〕.ppt
- 福建省2013届新课标高考化学一轮总复习课件︰第2单元第8讲化学反应速率和化学平衡.ppt
- 福建电信168声讯信息服务处理文案.ppt
- 福建省2013届新课标高考历史一轮复习课件︰必修1第5单元俄国十月革命.ppt
- 福建省《高考考试说明–思想政治》:必修2《政治生活》考点解读.ppt
- 矿压课件〔1矿山压力和矿山压力显现〕山科.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 2024浙江嘉兴市众业供电服务有限公司招聘笔试备考试题及答案解析.docx VIP
- Razer雷蛇灵刃15标准版-GTX1660 Ti(RZ09-03009)中文手册.pdf
- ISO90012015标准.ppt VIP
- 2025届湖南新高考教学教研联盟高三第二次联考数学试卷及参考答案.pdf VIP
- 辐射防护手册 第1分册 辐射源与屏蔽_李德平,潘自强主编_北京:原子能出版社_1987.08_10263208_P480.pdf
- 机器人行走机构及控制系统设计和实现计算机专业.pdf VIP
- 建筑装饰装修-分部工程质量验收记录表.doc VIP
- 2024年黑龙江省大庆市中考数学试题(原卷版).pdf
- 2025嘉兴市众业供电服务有限公司招聘74人笔试备考试题及答案解析.docx VIP
- (高清版)DB34∕T 4706-2024 手术智慧医疗系统建设规范.docx VIP
原创力文档

文档评论(0)