-1
A
回答
1
这是一个测试表
CREATE TABLE test20120524
(
id integer NOT NULL,
bool boolean,
comment_by_trigger text,
CONSTRAINT pk_test20120524 PRIMARY KEY (id)
)
WITH (
OIDS=TRUE
);
这是一个示例触发功能。 OLD
和NEW
是预声明的变量,表示更新的行。
create or replace function test1() returns opaque as
'
declare
-- some variables
begin
if OLD.bool = false and NEW.bool = true then
NEW.comment_by_trigger = ''affected by trigger'';
end if;
return NEW;
end;
' language 'plpgsql';
然后,创建触发器。
CREATE TRIGGER test2
BEFORE UPDATE
ON test20120524
FOR EACH ROW
EXECUTE PROCEDURE test1();
存储过程并不困难。你可以在PostgreSQL的官方文件很容易地学会它:http://www.postgresql.org/docs/9.1/interactive/index.html
看到
- 36 ..触发器
- 39 .. PL/pgSQL的 - SQL过程语言(尤其是39.9触发程序)
相关问题
- 1. 触发器更新另一个表
- 2. MySQL触发器根据另一个表上的更改更新表格
- 3. PLSQL触发器更新另一个表中的字段值
- 4. 如何根据另一个表中的值更新列?
- 5. 更新另一个数据库中的表的触发器
- 6. 如何使用更新触发器更新另一个表?
- 7. SQL Server后更新触发器更新另一个表
- 8. 更新另一张表后触发器更新一张表
- 9. 如何根据另一个DataTable列值更新数据表列值?
- 10. 触发更新另一个表
- 11. 触发另一个表更新行
- 12. 根据另一个表中的计数器更新列?
- 13. 如何使用触发器根据另一个表操作表?
- 14. 当另一个表插入或更新时,Oracle触发器更新一个表
- 15. Oracle触发器更新同一个表中的列值
- 16. 根据匹配列从另一个表格列中更新列
- 17. MySQL的:写触发表列和更新相同,另一个表
- 18. 如何根据另一列值设置列值触发器语句?
- 19. 根据另一个表中的值更新值
- 20. 从另一个表列值更新列
- 21. 创建触发器,更新时,另一个表中的列被更新在一个表中的列
- 22. 根据另一个表中的值更新表
- 23. 根据另一列+间隔更新列
- 24. 根据同一表中的另一列更新表中的列
- 25. 根据另一个表中的数据更新一个SQL表
- 26. 如何根据另一列的值更新“职级”列的值?
- 27. 根据另一列值更新R中data.table的列值
- 28. 根据另一列值在新列中显示一个值period123y
- 29. 根据另一个列表的值创建一个列表c#
- 30. Postgres - 更新语句作为触发器
非常感谢你,这是晚上需要req的那些东西之一,你希望在第二天早晨完成,而且没有太多时间来挖掘。非常感谢你 – user373201