删除列时重新创建触发器的规则

2020-09-12 03:56发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如果我有一个带有触发器的表,并且...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


如果我有一个带有触发器的表,并且在该表上放了一列,则会收到警告消息:

警告:表" mytable"的架构已更改。  
在该表上使用'if update(column-name)子句删除并重新创建每个触发器。

第一个问题,警告中的"列名"是否仅指我删除的列?

此外,在文档中:

SAP ASE->参考->命令->更改表-> 更改表架构

它说:

"为确保触发器正确触发,请在执行添加,删除,修改或锁定操作后删除并重新创建已更改表上的所有触发器"

拖放并重新创建 * all * 触发器,即使它们未引用修改后的列也是如此? 是真的吗?

2条回答
梦想连接
2020-09-12 04:38

您好,

这是使用" if update()"的触发器的示例代码

创建表tt(c1 int null,c2 int null,c3 varchar(6)null,c4 varchar( 6)null)
go
在tt上创建触发器tx,以进行更新,如果update(c2)开始更新tt,则设置c3 =" change" end
go
插入tt值(1, 1," new"," new")
转到
更新tt set c2 = 2
转到

一周热门 更多>