尝试插入触发器以更新字段 OpenOffice Base
Trying to insert a Trigger to update a field OpenOffice Base
我正在尝试从 OpenOffice 4.1.3 中的命令行插入触发器,并且我正在使用此配置:
工具 --> 选项 --> OpenOffice --> Java --> "Use..." 选中 --> 类路径 --> 添加包 --> "文件(hsqldb.jar)下载自我从这里下载的:Access2Base
http://www.access2base.com/access2base.html
所以...这是我要执行的代码:
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = (NEW."importe");
END
然后出现以下错误:
1: Unexpected end of command: BEGIN in statement [CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN]
PS:我从以下位置执行此代码:工具 --> SQL...
PS2:我在 mysql 中遇到了类似的问题,但我在那里解决了它,将分隔符更改为 //
这是示例代码:
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = (NEW."importe");
END//
感谢您的帮助!
这是我要放置新的 hsqldb 文件夹的地方,但我遇到了同样的错误,我尝试 select 这个文件夹、超级文件夹、super/super 文件夹并尝试只是把 hsqldb/lib/hsqldb.jar 文件作为包,但仍然没有
检查HSQLDB JAR 版本并确保它高于2.20 版。触发器定义需要一个带有 REFERENCING ...
的额外行
您的代码正在更新 "Costes" table 中的所有行。 UPDATE 语句需要一个 WHERE 子句,其条件为 select 只有您要更新的行。
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
REFERENCING NEW ROW AS NEWROW
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = NEWROW."importe" WHERE ... ;
END//
我正在尝试从 OpenOffice 4.1.3 中的命令行插入触发器,并且我正在使用此配置: 工具 --> 选项 --> OpenOffice --> Java --> "Use..." 选中 --> 类路径 --> 添加包 --> "文件(hsqldb.jar)下载自我从这里下载的:Access2Base http://www.access2base.com/access2base.html
所以...这是我要执行的代码:
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = (NEW."importe");
END
然后出现以下错误:
1: Unexpected end of command: BEGIN in statement [CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN]
PS:我从以下位置执行此代码:工具 --> SQL...
PS2:我在 mysql 中遇到了类似的问题,但我在那里解决了它,将分隔符更改为 //
这是示例代码:
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = (NEW."importe");
END//
感谢您的帮助!
这是我要放置新的 hsqldb 文件夹的地方,但我遇到了同样的错误,我尝试 select 这个文件夹、超级文件夹、super/super 文件夹并尝试只是把 hsqldb/lib/hsqldb.jar 文件作为包,但仍然没有
检查HSQLDB JAR 版本并确保它高于2.20 版。触发器定义需要一个带有 REFERENCING ...
的额外行您的代码正在更新 "Costes" table 中的所有行。 UPDATE 语句需要一个 WHERE 子句,其条件为 select 只有您要更新的行。
CREATE TRIGGER "t1" AFTER UPDATE ON "DesgloseCostes"
REFERENCING NEW ROW AS NEWROW
FOR EACH ROW
BEGIN ATOMIC
update "Costes" set "importenoiva" = NEWROW."importe" WHERE ... ;
END//