`
yang_min
  • 浏览: 342994 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

存储过程和触发器的区别

阅读更多
存储过程
是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。
存储过程可包含程序流、逻辑以及对数据库的查询。它们可以接受参数、输出参数、返回单个或多个结果集以及返回值。
可以出于任何使用 SQL 语句的目的来使用存储过程,它具有以下优点:
可以在单个存储过程中执行一系列 SQL 语句。
可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句。
存储过程在创建时即在服务器上进行编译,所以执行起来比单个 SQL 语句快。

触发器
是一种特殊类型的存储过程,当使用下面的一种或多种数据修改操作在指定表中对数据进行修改时,触发器会生效:UPDATE、INSERT 或 DELETE。触发器可以查询其它表,而且可以包含复杂的 SQL 语句。它们主要用于强制复杂的业务规则或要求。例如,可以控制是否允许基于顾客的当前帐户状态插入定单。
触发器还有助于强制引用完整性,以便在添加、更新或删除表中的行时保留表之间已定义的关系。然而,强制引用完整性的最好方法是在相关表中定义主键和外键约束。如果使用数据库关系图,则可以在表之间创建关系以自动创建外键约束。有关详细信息,请参见表关系。
使用触发器的优点
触发器的优点如下:
触发器是自动的:它们在对表的数据作了任何修改(比如手工输入或者应用程序采取的操作)之后立即被激活。
触发器可以通过数据库中的相关表进行层叠更改。例如,可以在 titles 表的 title_id 列上写入一个删除触发器,以使其它表中的各匹配行采取删除操作。该触发器用 title_id 列作为唯一键,在 titleauthor、sales 及 roysched 表中对各匹配行进行定位。
触发器可以强制限制,这些限制比用 CHECK 约束所定义的更复杂。与 CHECK 约束不同的是,触发器可以引用其它表中的列。例如,触发器可以回滚试图对价格低于 10 美元的书(存储在 titles 表中)应用折扣(存储在 discounts 表中)的更新。
分享到:
评论

相关推荐

    Oracle数据库创建存储过程和触发器

    Oracle 数据库创建存储过程和触发器 Oracle 数据库创建存储过程和触发器是高级数据库开发设计的重要组成部分。存储过程和触发器是一种特殊类型的数据库对象,它们可以实现复杂的业务逻辑和数据处理操作。 存储过程...

    SQL Server数据库实验_存储过程与触发器设计.docx

    在SQL Server数据库中,存储过程和触发器是两种重要的数据库对象,它们在数据管理与业务逻辑处理中扮演着关键角色。 存储过程是预编译的SQL语句集合,它可以包含一系列的数据操作,如查询、更新、插入和删除等。...

    数据库实验报告-存储过程、触发器

    通过这些实验步骤,学生能够深入理解存储过程和触发器的工作原理及其在实际数据库应用中的作用。同时,这些操作也展示了如何在数据库管理系统中编写和管理这些数据库对象,有助于提升数据库设计和管理能力。

    实验六:创建存储过程和触发器1

    实验六的目的是深入理解并掌握SQL Server中的存储过程和触发器。存储过程是预编译的SQL语句集合,它们可以被多次调用,提高了代码的重用性和执行效率,同时降低了网络流量。以下是关于存储过程和触发器的详细解释: ...

    数据库原理及应用实验四(存储过程和触发器)

    【存储过程】 存储过程是预编译的SQL语句集合,它可以在...通过这个实验,学生不仅能掌握T-SQL的基本语法,还能深入理解存储过程和触发器在数据库管理中的重要性,以及如何利用它们来实现更复杂的数据操作和管理任务。

    存储过程和触发器的编程

    在数据库管理领域,存储过程和触发器是两个重要的概念,它们在数据操作和业务逻辑实现中扮演着不可或缺的角色。下面将详细阐述这两个概念及其在实际应用中的重要性。 首先,我们来了解一下存储过程(Stored ...

    存储过程和触发器

    存储过程和触发器的概念,创建和使用过程,代码样例

    教程\存储过程和触发器.ppt

    教程\存储过程和触发器.ppt

    SQL存储过程和触发器

    在已建立的XSCJ和TSGL数据库和表的基础上创建,存储过程和触发器,有对数据库进行操作,以及保存操作代码和截图。

    SQL存储过程,触发器讲解及过程中要注意的内容

    SQL存储过程和触发器是数据库管理系统中的重要组成部分,它们在数据处理和业务逻辑实现中扮演着关键角色。本文将深入探讨这两个概念,以及在使用它们时需要注意的关键点。 首先,让我们了解一下SQL存储过程。存储...

    sql存储过程和触发器

    SQL存储过程和触发器是数据库管理系统中用于实现特定功能的重要工具,主要应用于SQL Server 2000等数据库系统。 存储过程(Stored Procedure)是一组预先编译的SQL语句集合,它们被存储在数据库中,可以被多次调用...

    实验六 游标、存储过程与触发器

    在数据库系统中,游标、存储过程和触发器是三个高级技术,它们在复杂逻辑处理和数据管理方面扮演着核心角色。本文将详细解析实验六中这些概念的实现方式,包括具体的示例和操作步骤,以期帮助数据库管理员和开发人员...

    GBase8s 存储过程和触发器测试方法

    在GBase8s数据库系统中,存储过程和触发器是重要的数据库对象,它们允许数据库管理员和开发者实现更复杂的业务逻辑和数据操作。本篇将详细阐述如何在GBase8s中进行存储过程的测试,以及相关知识。 首先,存储过程是...

    Oracle存储过程、触发器

    Oracle存储过程和触发器是数据库管理系统中的重要组成部分,它们在数据处理和业务逻辑实现中扮演着关键角色。本文将深入探讨这两个概念以及它们在实际应用中的使用。 **Oracle存储过程** Oracle存储过程是一组预...

    存储过程和触发器ppt

    【存储过程】 存储过程是预编译的SQL语句集合...总的来说,存储过程和触发器是数据库管理系统中的重要组件,它们能够提高效率、增强安全性并简化复杂的数据库操作。理解并熟练运用这两者对于数据库设计和管理至关重要。

    存储过程与触发器

    存储过程的创建和触发器的创建和查询、删除以及应用

    存储过程和触发器语法详细讲解

    在数据库管理中,存储过程和触发器是两个重要的概念,它们在数据操作和业务逻辑实现中扮演着不可或缺的角色。本文将深入探讨这两个概念,提供详尽的语法解析,并结合实例来帮助理解它们的工作原理和应用。 一、存储...

    存储过程和触发器的应用

    ### 存储过程和触发器的应用 #### 一、存储过程概述 ##### 1.1 存储过程的概念 **存储过程(Stored Procedure)** 是一组为了完成特定功能的 SQL 语句集,它们经过编译后存储在数据库中。用户可以通过指定存储...

    自定义函数、存储过程和触发器.pdf

    ### 自定义函数、存储过程和触发器 #### 9.1 自定义函数 自定义函数是在SQL Server中由用户自行创建的一种子程序,用于补充和扩展系统提供的内置函数功能。自定义函数的主要目的是提高代码的复用性以及解决特定...

    什么事存储过程和触发器

    【存储过程】 存储过程是预编译的SQL语句集合...在实际应用中,存储过程和触发器能显著提高效率,减少网络流量,增强系统的安全性和稳定性。通过合理使用它们,可以更高效地管理数据库,实现复杂的数据操作和业务逻辑。

Global site tag (gtag.js) - Google Analytics