
正文
sqlserver2008dml触发器,sqlserver触发器在哪找
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
SQL中触发器有什么作用
触发器可通过数据库中的相关表实现级联更改;不过,通过级联引用完整性约束可以更有效地执行这些更改。触发器可以强制比用 CHECK 约束定义的约束更为复杂的约束。与 CHECK 约束不同,触发器可以引用其它表中的列。
用触发器还可以强制执行业务规则 Microsoft SQL Server 2000 提供了两种主要机制来强制业务规则和数据完整性:约束和触发器。触发器是一种特殊类型的存储过程,它在指定的表中的数据发生变化时自动生效。
触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性。除此之外,触发器还有其它许多不同的功能:(1)强化约束(Enforce restriction)触发器能够实现比CHECK 语句更为复杂的约束。
【答案】: 触发器是可以由事件来启动运行的,存在于数据库服务器中的一个过程。作用:可以实现一般的约束无法完成的复杂约束,从而实现更为复杂的完整性要求。
触发器的执行可以由对一个表的insert,delete, update等操作来触发,触发器经常用于加强数据的完整性约束和业务规则等等。触发器可以对其他表进行查询,也可以包含复杂的SQL语句。他么主要用于强制服从复杂的业务规则或者要求。
相关问答
Q1: SQL中触发器主要用于实施什么类型的数据完整性?如何实施?
触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性。除此之外,触发器还有其它许多不同的功能:(1)强化约束(Enforce restriction)触发器能够实现比CHECK 语句更为复杂的约束。
触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。SQL3的触发器是一个能由系统自动执行对数据库修改的语句。
后触发器 (AFTER,FOR)先执行对应语句,后执行触发器中的语句。前触发器 并没有真正的执行触发语句(insert,update,delete),而是执行触发后的语句。行级触发器 (FOR EACH ROW) 在SQL server 中不存在。
Q2: sqlserver2008触发器执行过程中,原表数据又发生变化时,会不会丢失触发...
1、如果是修改原有数据列的数据类型,则可能会造成数据溢出或数据丢失,但一般sql会阻止这类操作,强制执行的话会出现数据丢失 如果是新添加列不会对原数据有影响。
2、原数据保留。将有数据的字段删除,会造成该字段数据丢失。将有数据的字段长度减少,可能会造成该字段数据丢失,也可能不会,跟据实际存储内容的长度决定。修改原字段的数据类型,不确定的结果,一般不要这样操作。
3、但是在 SQL Server 中, 触发器是 语句级别的。也就是说:UPDATE table_1 SET coulmn_1 = 10 WHERE column_2 = 5;会更新3条记录。但是触发器,只执行了一次。
4、触发器是一种特殊类型的存储过程,它在指定的表中的数据发生变化时自动生效。唤醒调用触发器以响应 INSERT、UPDATE 或 DELETE 语句。触发器可以查询其它表,并可以包含复杂的 Transact-SQL 语句。
5、定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。常见的触发器有三种:分别应用于Insert , Update , Delete 事件。
6、SQL SERVER中触发器的触发类型有三种。DML触发器,当数据库中表中的数据发生变化时,包括insert,update,delete任意操作,如果对该表写了对应的DML触发器,那么该触发器自动执行。
关于sqlserver2008dml触发器和sqlserver触发器在哪找的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







