您的位置:首页 > 其它

触 发器 before 的写法如下

2015-10-13 16:44 246 查看
hen using row level triggers (and BEFORE triggers are always row level triggers), you do not use UPDATE statements to modify the contents of the according row but use SET statements to modify the individual columns of the current row - cf. that sample from
the docs:
CREATE TRIGGER emp_upper_postal_code
BEFORE UPDATE OF PostalCode
ON Employees
REFERENCING NEW AS new_emp
FOR EACH ROW
WHEN ( ISNUMERIC( new_emp.PostalCode ) = 0 )
BEGIN
-- Ensure postal code is uppercase (employee might be
-- in Canada where postal codes contain letters)
SET new_emp.PostalCode = UPPER(new_emp.PostalCode)
END;


So in your case it might work to use something like (I don't claim to understand the calculations):
...
set new_shipper_line.amount = isnull(new_shipper_line.user_9,0)  * isnull(new_shipper_line.user_10,0);
set new_shipper_line.sys_all_amt = isnull(new_shipper_line.user_9,0) * ...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: