【发布时间】:2014-08-20 00:41:36
【问题描述】:
我正在尝试在使用 PostgreSQL 的 CartoDB 中创建触发器和函数。我希望每次在我的表 obs 上发生 INSERT INTO 时触发我的触发器。我希望我的函数更新另外两个表 inland 和 coastal 中的值。到目前为止,我已经尝试过这段代码:
CREATE FUNCTION inlanddisp()
RETURNS trigger AS $$
BEGIN
UPDATE inland SET lt_dispatch_level = obs.named_lt_dispatch_level
FROM obs
WHERE obs.created_at = (SELECT MAX(created_at) FROM obs)
AND inland.cartodb_id = 1
END;
$$
CREATE TRIGGER update_inland
AFTER INSERT INTO obs
ON inland
FOR EACH ROW
EXECUTE PROCEDURE inlanddisp();
如何设置我的函数和触发器以使其正常工作?我在“CREATE”处或附近遇到语法错误。
【问题讨论】:
标签: function postgresql triggers