通过存储过程 创建动态触发器
来源:互联网 发布:贵阳软件人均工资 编辑:程序博客网 时间:2024/06/05 14:58
/*Author:BeanCreate date:2011-08-12问题描述1 :很多时候我们一个模板会有很多的表格,例如Care 项目,一共有29张表,想删除一条单据, 那么我们要写29条Delete语句问题描述2:如果不写触发器,很多时候只是_1表的数据被删除了,剩下的_2,_3,_4...表的数据还会存在数据库里浪费资源功能描述:主要用于Landa数据库单据删除,当删除_1表后,后面带动的_2,_3,_4...表相同VGUID的单据会被自动删除优点:快捷,方便使用案例:Exec Porc_AddTrigger '表名_1' */if OBJECT_ID('Porc_AddTrigger','P') is not null drop proc Porc_AddTriggergocreate Proc Porc_AddTrigger@TB_name varchar(50)asBeginBegin TransactionBegin Tryif RIGHT(@TB_name,2)!='_1'RaisError('Table name should end with "_1"',16,1)ElseBegindeclare @sql varchar(max)set @sql='create trigger TR_'+left(@TB_name,LEN(@TB_name)-2)+'on '+@TB_name+'for deleteasBegindeclare @TMP varchar(50),@i numeric(38,0),@table varchar(50), @SQL varchar(max),@VGUID uniqueidentifierset @TMP='+''''+left(@TB_name,len(@TB_name)-1)+''''+'set @table=''CSEMPL_2''set @VGUID=newid()set @i=2select @VGUID=VGUID from deletedwhile 1=1Begin set @table=@TMP+convert(varchar(10),@i) if OBJECT_ID(@table,''U'') is not null Begin set @SQL=''delete from '' + @table +'' where VGUID ='''+'+''''''''+'+' convert(varchar(50),@VGUID)+'+''''''''''+'exec(@SQL)set @i=@i+1 End ElseBreak; endEnd'Exec(@sql)EndCommit TransactionEnd TryBegin CatchRollback Transactiondeclare @Error_Message varchar(1000)set @Error_Message= 'Error_Nuber :'+CONVERT(varchar(5),Error_Number())+char(13)+'Error_Line :'+Convert(varchar(5),Error_Line())+char(13)+'Error_Message:'+CONVERT(varchar(50),Error_Message())RaisError(@Error_message,16,1)End CatchEnd
- 通过存储过程 创建动态触发器
- 存储过程中创建触发器
- 创建存储过程、触发器、视图
- 创建存储过程和触发器
- 用存储过程通过传入参数动态创建视图
- MYSQL创建存储过程,函数,触发器,索引
- MYSQL5.6创建存储过程和触发器
- 利用存储过程动态创建表及基于该表的触发器
- 创建触发器,触发器是一种特殊的存储过程
- 动态创建表存储过程
- 存储过程动态创建试图
- postgresql 创建表,创建存储过程 创建触发器 创建触发器函数
- SQLServer创建表,插入数据,查询,创建触发器,存储过程
- SQLServer创建表,插入数据,查询,创建触发器,存储过程
- 通过JDBC创建Oracle的存储过程
- mysql存储过程、函数和触发器的创建
- sql创建数据库、表、索引、触发器、存储过程学习
- java程序中创建触发器、存储过程等对象
- ListView自适应实现表格
- 结婚
- ajax
- java数据结构----经典排序集锦
- Linux子进程对父进程资源的“写时拷贝”
- 通过存储过程 创建动态触发器
- Windows API 每日一练之 TrackMouseEvent
- Uva 216 Getting in Line
- POJ1724 ROADS(加限制条件的最短路,深搜)
- 读《设计模式》一
- ewf
- jstl表达式
- java A(A a)构造函数--原型构造函数
- (转)as3 MVC模式