English 中文(简体)
mostgres 触发根据列值更新另一个表格
原标题:postgres trigger to update another table based on a column value
  • 时间:2012-05-24 00:23:39
  •  标签:
  • postgresql

我对存储的编程一无所知。 但是当表格中的布林专栏将值从假变为真时, 我非常需要运行更新的 sql 。 如果有人能提供的话, 将会非常感激 。

提前感谢

最佳回答

这里有一个测试表格

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 官方文件中轻松地学习 : < a href="http://www. plasgresql.org/docs/9.1/interactive/index.html" rel=“nofollow” >http://www.posgresql.org/docs/9.1/interactive/index.html

见见

  • 36.. Triggers
  • 39.. PL/pgSQL - SQL Procedural Language (especially 39.9 Trigger Procedures)
问题回答

暂无回答




相关问题
摘录数据

我如何将Excel板的数据输入我的Django应用? I m将PosgreSQL数据库作为数据库。

Postgres dump of only parts of tables for a dev snapshot

On production our database is a few hundred gigabytes in size. For development and testing, we need to create snapshots of this database that are functionally equivalent, but which are only 10 or 20 ...

How to join attributes in sql select statement?

I want to join few attributes in select statement as one for example select id, (name + + surname + + age) as info from users this doesn t work, how to do it? I m using postgreSQL.

What text encoding to use?

I need to setup my PostgreSQL DB s text encoding to handle non-American English characters that you d find showing up in languages such as German, Spanish, and French. What character encoding should ...

SQL LIKE condition to check for integer?

I am using a set of SQL LIKE conditions to go through the alphabet and list all items beginning with the appropriate letter, e.g. to get all books where the title starts with the letter "A": SELECT * ...

热门标签