DB2 前触发器语法 [英] DB2 before trigger syntax

查看:41
本文介绍了DB2 前触发器语法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经定义了这个触发器:

I've defined this trigger:

CREATE TRIGGER actualizarSaldoIngreso
BEFORE INSERT ON Ingreso
FOR EACH ROW MODE DB2SQL
BEGIN ATOMIC
    UPDATE Cliente SET Nombre = 'Juan' WHERE DNI = '87366034M';
END;

但 DB2 返回此错误:

But DB2 returns this error:

An unexpected token "END-OF-STATEMENT" was found following "RE DNI = '87366034M'". Expected tokens may include: "<delim_semicolon>"

有什么想法吗?

推荐答案

你需要像这样改变终止符:

You need to change terminator like this :

--#SET TERMINATOR @
CREATE TRIGGER actualizarSaldoIngreso
BEFORE INSERT ON Ingreso
FOR EACH ROW MODE DB2SQL
BEGIN ATOMIC
    UPDATE Cliente SET Nombre = 'Juan' WHERE DNI = '87366034M';
END@
--#SET TERMINATOR ;

使用不同的终止符,批处理不会过早执行.

With a different terminator, the batch doesn't execute prematurely.

这篇关于DB2 前触发器语法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆