SQLSERVER中触发器的触发类型有几种?

SQLSERVER中触发器的触发类型有几种?

SQLSERVER中索引有几种类型,解释不同类型的索引,而且描述它们的作用是什么?

接口和抽象类的区别是什么?

请大家尽可能说详细点,好的话可以加分!
描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

SQL SERVER中触发器的触发类型有三种。

1、DML触发器,当数据库中表中的数据发生变化时,包括insert,update,delete任意操作,如果对该表写了对应的DML触发器,那么该触发器自动执行。

2、DDL触发器,是Sql Server2005新增的触发器,主要用于审核与规范对数据库中表,触发器,视图等结构上的操作。比如在修改表,修改列,新增表,新增列等。它在数据库结构发生变化时执行,主要用它来记录数据库的修改过程,以及限制程序员对数据库的修改。

3、登录触发器,登录触发器将为响应 LOGIN 事件而激发存储过程。与 SQL Server 实例建立用户会话时将引发此事件。登录触发器将在登录的身份验证阶段完成之后且用户会话实际建立之前激发。

扩展资料:

DML触发器的主要作用在于强制执行业 务规则,以及扩展Sql Server约束,默认值等。因为我们知道约束只能约束同一个表中的数据,而触发器中则可以执行任意Sql命令。

来自登录触发器内部且通常将到达用户的所有消息(例如错误消息和来自 PRINT 语句的消息)会传送到 SQL Server 错误日志。如果身份验证失败,将不激发登录触发器。

触发器可在写入数据表前,强制检验或转换数据。触发器发生错误时,异动的结果会被撤销。可依照特定的情况,替换异动的指令 (INSTEAD OF)。

温馨提示:内容为网友见解,仅供参考
第1个回答  2007-01-10
主要是3种拉
INSERT
UPDATE
DELETE
第2个回答  推荐于2018-05-10
触发器是一种特殊类型的存储过程,它不同于我们前面介绍过的存储过程。触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。当对某一表进行诸如UPDATE、 INSERT、 DELETE 这些操作时,SQL Server 就会自动执行触发器所定义的SQL 语句,从而确保对数据的处理必须符合由这些SQL 语句所定义的规则。
触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性。除此之外,触发器还有其它许多不同的功能:
(1) 强化约束(Enforce restriction)
触发器能够实现比CHECK 语句更为复杂的约束。
(2) 跟踪变化Auditing changes
触发器可以侦测数据库内的操作,从而不允许数据库中未经许可的指定更新和变化。

(3) 级联运行(Cascaded operation)。
触发器可以侦测数据库内的操作,并自动地级联影响整个数据库的各项内容。例如,某个表上的触发器中包含有对另外一个表的数据操作(如删除,更新,插入)而该操作又导致该表上触发器被触发。
(4) 存储过程的调用(Stored procedure invocation)。
为了响应数据库更新触,发器可以调用一个或多个存储过程,甚至可以通过外部过程的调用而在DBMS( 数据库管理系统)本身之外进行操作。
由此可见,触发器可以解决高级形式的业务规则或复杂行为限制以及实现定制记录等一些方面的问题。例如,触发器能够找出某一表在数据修改前后状态发生的差异,并根据这种差异执行一定的处理。此外一个表的同一类型(INSERT、 UPDATE、 DELETE)的多个触发器能够对同一种数据操作采取多种不同的处理。
总体而言,触发器性能通常比较低。当运行触发器时,系统处理的大部分时间花费在参照其它表的这一处理上,因为这些表既不在内存中也不在数据库设备上,而删除表和插入表总是位于内存中。可见触发器所参照的其它表的位置决定了操作要花费的时间长短。

触发器的种类

SQL Server 2000 支持两种类型的触发器:AFTER 触发器和INSTEAD OF 触发器。其中AFTER 触发器即为SQL Server 2000 版本以前所介绍的触发器。该类型触发器要求只有执行某一操作(INSERT UPDATE DELETE) 之后,触发器才被触发,且只能在表上定义。可以为针对表的同一操作定义多个触发器。对于AFTER 触发器,可以定义哪一个触发器被最先触发,哪一个被最后触发,通常使用系统过程sp_settriggerorder 来完成此任务。

INSTEAD OF 触发器表示并不执行其所定义的操作(INSERT、 UPDATE、 DELETE),而仅是执行触发器本身。既可在表上定义INSTEAD OF 触发器,也可以在视图上定义INSTEAD OF 触发器,但对同一操作只能定义一个INSTEAD OF 触发器。本回答被提问者和网友采纳
第3个回答  2007-01-10
太专业了。我会用但是都叫不上来

建议你到网易的 教育学院去看看吧

SQLSERVER中触发器的触发类型有几种?
SQL SERVER中触发器的触发类型有三种。1、DML触发器,当数据库中表中的数据发生变化时,包括insert,update,delete任意操作,如果对该表写了对应的DML触发器,那么该触发器自动执行。2、DDL触发器,是Sql Server2005新增的触发器,主要用于审核与规范对数据库中表,触发器,视图等结构上的操作。比如在修改...

数字电路常用的触发器有哪些?3个空
SQL Server 有三种常规类型的触发器:DML 触发器、DDL 触发器和登录触发器。DML触发器,当数据库中表中的数据发生变化时,包括insert,update,delete任意操作,如果我们对该表写了对应的DML触发器,那么该触发器自动执行;DDL触发器,它是Sql Server2005新增的触发器,主要用于审核与规范对数据库中表,触...

SQL server中有哪几种触发器?
SQL Server 2000 支持两种类型的触发器:AFTER 触发器和INSTEAD OF 触发器。其中AFTER 触发器即为SQL Server 2000 版本以前所介绍的触发器。该类型触发器要求只有执行某一操作(INSERT UPDATE DELETE) 之后,触发器才被触发,且只能在表上定义。可以为针对表的同一操作定义多个触发器。对于AFTER 触发器,...

数字电路常用的触发器有哪些?3个空
SQL Server中有三种常见类型的触发器:DML触发器、DDL触发器和登录触发器。DML触发器会在数据库表中的数据发生变化时自动执行,包括insert、update和delete等操作。对应的DML触发器需要在表上编写,以响应这些操作。DDL触发器是SQL Server 2005新增的触发器类型,主要用于审核和规范对数据库中表、触发器、...

sql server2008中的触发器有3种类型,分别为
(1)DML触发器:是指触发器在数据库中发生数据操作语言(DML)事件时将启用。DML事件即指在表或视图中修改数据的insert、update、delete语句也。(2)DDL触发器:是指当服务器或数据库中发生数据定义语言(DDL)事件时将启用。DDL事件即指在表或索引中的create、alter、drop语句也。(3)登陆触发器:是指当...

什么是触发器?
触发器也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。然而,强制引用完整性的最好方法是在相关表中定义主键和外键约束。如果使用数据库关系图,则可以在表之间创建关系以自动创建外键约束。SQL Server 包括三种常规类型的触发器:DML 触发器、DDL 触发器和...

SQL Server触发器的基本语法和使用方法
SQL Server数据库中的触发器是一种强大的工具,能在特定事件如数据插入、更新或删除时自动执行预设操作,对于数据的自动化管理和业务逻辑维护至关重要。要创建触发器,首先使用CREATE TRIGGER语句,包括触发器名称(如trigger_name)、事件类型(BEFORE或AFTER)、触发事件(INSERT、UPDATE或DELETE)、关联的表...

SQL中的“触发器”是什么?
SQL Server 2005中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句有create、alter、drop语句。DML触发器分为:1、 after触发器(之后触发)a、 insert触发器 b、 update触发器 c、 delete触发器 2、 instead of 触发器 (之前触发)其中...

sql server 触发器 中 for 怎么使用
创建触发器的语法是:create trigger 触发器名称 on(为哪个表创建触发器) for (创建什么样的触发器)只要记住,for后面跟触发器的类型就行了。触发器主要分2种,DML和DDL。after和instead of 都是DML触发器,其中,after主要是对表进行增、删、改时触发,而instead of 触发器并不执行其所定义的操作,...

如何了解触发器的执行信息?
SQL Server数据库中触发器的类型有很多,并不是所有的触发器中EventDate函数都有效。通常情况下只有两种类型的触发器,即DDL触发器或者登陆触发器的内容应用这个函数时,这个函数才会返回相关的信息。如果这个函数有其它例程或者其它触发器调用,则其不会返回信息。即使这些例程由DDL或者登陆触发器进行调用。这...

相似回答