触发器的操作与管理.pptVIP

  • 0
  • 0
  • 约8.61千字
  • 约 32页
  • 2025-10-20 发布于广东
  • 举报

第1页,共32页,星期日,2025年,2月5日TriggerViewTriggerisaspecialkindofstoredprocedure,itcanbeeffectiveautomaticallywhileexecutingLanguageevent.触发器是一种特殊的存储过程,它在执行语言事件时自动生效。SQLServer2005包括两大类触发器:DML触发器和DDL触发器。(1)DMLTriggerwillstartwhileoperatingdataindatabase.DMLeventsincludestheINSERT,UPDATEandDELETEstatement.DMLtrigger,DMLtriggercanqueryothertables,canincludecomplexTransact-SQLstatement.TheTriggerandthestatementbelongstothetriggeristreatedasasingletransactionwhichcanberolledback.Ifthefaultisdetected(forexamplediskisfull),thewholetransactionwillberolledback.DML触发器在数据库中发生数据操作语言(DML)事件时将启用。DML事件包括在指定表或视图中修改数据的INSERT语句、UPDATE语句或DELETE语句。DML触发器可以查询其他表,还可以包含复杂的Transact-SQL语句。将触发器和触发它的语句作为可在触发器内回滚的单个事务对待。如果检测到错误(例如,磁盘空间不足),则整个事务即自动回滚。第2页,共32页,星期日,2025年,2月5日(2)DDLTriggeristhenewincreasedfunctionofSQLServer2005.DMLTriggerwillstartwhileDDLeventoccurs.DDL触发器是SQLServer2005的新增功能。当服务器或数据库中发生数据定义语言(DDL)事件时将调用这些触发器。第3页,共32页,星期日,2025年,2月5日11.1DML触发器的创建和应用TriggerwillbecalledWhentheDMLeventofdatabaseoccurs,itmakessuredataoperationtoobeytheruleofsuchSQLstatement.当数据库中发生数据操作语言(DML)事件时将调用DML触发器。从而确保对数据的处理必须符合由这些SQL语句所定义的规则。第4页,共32页,星期日,2025年,2月5日DML触发器的主要优点如下:(1)DMLTriggercanmaketherelatedtablescascadechange.Forexample,Youcanmakeadeletingtriggeronthecolomnsnoofthetablestudent,whenyoudeletethedataofstudenttable,therelatedrecordsofthetablescwillbealsodeleted.DML触发器可通过数据库中的相关表实现级联更改。例如,可以在student表的sno列上写入一个删除触发器,以使其他表中的各匹配行采取删除操作。该触发器用sno列作为惟一键,在sc表中对各匹配行进行定位。第5页,共32页,星期日,2025年,2月5日(2)DMLtriggercanpreventthemaliceorthefaultoftheoperationsofINSERT,UPDATEandDELETE,andenforcetoexecutethemorecomplexconstraintthenalimitationofacheck.DML触发器可以防止恶意或错误的INSERT、UPDATE以及DELETE操作,并强制执行比CHECK约束定义的限制更为复杂的其他限制。与CHECK约束不同,DML触发器可

文档评论(0)

1亿VIP精品文档

相关文档