为PL/pGSQL

问题描述 投票:0回答:1

我用于此问题的表是

  Table "table.group_standings"
    Column |         Type          | Modifiers
   --------+-----------------------+-----------
    team   | character varying(25) | not null
    wins   | smallint | not null   
    losses | smallint | not null
    draws  | smallint | not null
    points | smallint| not null
   Indexes:
     "group_standings_pkey" PRIMARY KEY, btree (team)
  Check constraints:
   "group_standings_draws_check" CHECK (draws >= 0)
   "group_standings_losses_check" CHECK (losses >= 0)
   "group_standings_points_check" CHECK (points >= 0)
   "group_standings_wins_check" CHECK (wins >= 0)

我现在拥有的代码,我需要帮助来告诉用户他们不允许更改团队名称,但是我遇到了问题。

CREATE OR REPLACE FUNCTION disallow_team_name_update() RETURNS trigger AS $$ BEGIN if(NEW.team <> OLD.team) /*tell the user to not change team names*/ END; $$ LANGUAGE plpgsql; CREATE TRIGGER tr_disallow_team_name_update BEFORE INSERT OR UPDATE OF team ON group_standings FOR EACH ROW EXECUTE PROCEDURE disallow_team_name_update();
    

您需要
RAISE
postgresql triggers plpgsql
1个回答
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.