sql触发器的使用及语法 sql 触发器( 二 )


假设函数可以满足应用程序的功能需求,域完整性应该通过检查约束来实施,引用完整性(RI)应该通过外键约束来实施 。当约束支持的函数不能满足应用程序的功能需求时,触发器非常有用 。\x0d\x0a CHECK约束只能根据逻辑表达式或同一表中的另一列来验证列值 。如果应用程序要求根据另一个表中的列来验证列值,则必须使用触发器 。约束只能通过标准系统错误信息传递错误信息 。如果您的应用程序需要自定义信息和更复杂的错误处理(或者可以从中受益),您必须使用触发器 。\x0d\x0a触发器可以通过数据库中的相关表实现级联变化;但是,通过级联引用完整性约束可以更有效地实现这些更改 。触发器可以禁止或回滚违反参照完整性的更改,从而取消尝试的数据修改 。当外键被更改并且新值与主键不匹配时,这种类型的触发器可能会起作用 。例如,您可以在.上创建插入触发器,以便在新值与.中的值不匹配时回滚插入 。但是,通常使用外键来实现这一目标 。\x0d\x0a如果触发器表上有约束,请在 OF触发器执行之后但在触发器执行之后之前检查它们 。如果约束被破坏,OF触发器操作将被回滚,并且不会执行AFTER触发器 。
\x0d\x0a实例1:\ x0d \ x00atri _\ x0d \ x0a on\ x0d \ x0a as \ x0d \ x00a@_ id char(10)\ x0d \ x0a@_ id = s ._ id from \ x0d \ x00a 内部联接 I \ x0d \ x0a on s ._ id = I ._ id \ x0d \ x0a if @_ id = ',16,8)\ x0d \ x0\ x0d \\ x0d \ x0ago \ x0a实例2:\ x0d \ x00atri _\ x0d \ x0a on\ x0d \ x0a for。
x0d \ x0aif ( _ id)\ x0d \ x00\ x0d \ x00 ('学号不能修改!',16,8)\ x0d \ x0\ x0d \\ x0d \ x0ago \ x0a示例3:删除触发器显示\ x0d \ x00a_\ x0d \ x0a on\ x0d \ x0a for。x0d \ x0a@_ id (10)\ x0d \ x0a@_ id =_ id from\ x0d \ x0a if @_ id = ' admin ' \ x0d \ x0a begin \ x0d \ (' error ',16,8)\ x0d \\ x0d \ 四、如何使用SQL触发器 。
以上是边肖对关于
SQL (SQL 的使用和语法)[/S2/]及相关问题的回答 。希望关于sql触发器(sql触发器的使用和语法)的问题对你有用!