小编2ca*_*can的帖子

PostgreSQL插入或更新触发函数易失性类别

假设我的DB(postgresql-9.x)中有2个表

CREATE TABLE FOLDER (
    KEY BIGSERIAL PRIMARY KEY,
    PATH TEXT,
    NAME TEXT
);
CREATE TABLE FOLDERFILE (
    FILEID BIGINT,
    PATH TEXT,
    PATHKEY BIGINT
);
Run Code Online (Sandbox Code Playgroud)

我自动更新FOLDERFILE.PATHKEY来自FOLDER.KEY每当我插入或更新FOLDERFILE

CREATE OR REPLACE FUNCTION folderfile_fill_pathkey() RETURNS trigger AS $$
DECLARE
  pathkey bigint;
  changed boolean;
BEGIN
  IF tg_op = 'INSERT' THEN
     changed := TRUE;
    ELSE IF old.FILEID != new.FILEID THEN
       changed := TRUE;
    END IF;
  END IF;
  IF changed THEN
     SELECT INTO pathkey key FROM FOLDER WHERE PATH = …
Run Code Online (Sandbox Code Playgroud)

postgresql volatile immutability volatility

4
推荐指数
1
解决办法
1383
查看次数

标签 统计

immutability ×1

postgresql ×1

volatile ×1

volatility ×1