Skip site navigation (1) Skip section navigation (2)

rules

From: Daniel Hernandez <dhernand(at)dcc(dot)uchile(dot)cl>
To: psql ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: rules
Date: 2006-04-25 17:09:13
Message-ID: 1145984953.14974.11.camel@localhost.localdomain (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
Hola,
estoy creando un sistema que maneja usuarios, grupos y otras cosas. Como
regla, cuando se crea un usuario se debe crear también un grupo para el
usuario e incorporar el usuario al grupo.

Los usuarios, grupos e inclusiones entre ambos se pueden definir
abreviadamente como:

CREATE TABLE users (login VARCHAR(40));
CREATE TABLE groups (
  id SERIAL     PRIMARY KEY,
  name          VARCHAR(128),
  description   TEXT
);
CREATE TABLE users_in_groups (
  user_id       INTEGER,
  group_id      INTEGER
);

Y lo que quiero hacer es una regla más o menos como la siguiente:

CREATE RULE insert_user AS ON INSERT
  TO users
  DO (
     INSERT
       INTO groups (name, description)
       VALUES (NEW.login, 'Grupo para usuario');
     INSERT
       INTO users_in_groups (user_id, group_id)
       VALUES (NEW.id, newgroupid)
     );

pero donde newgroupid sea el id del grupo que se creo para el usuario.
¿Se puede hacer eso de alguna forma en una regla?

Saludos
Daniel


Responses

  • Re: rules at 2006-04-25 17:46:22 from Alvaro Herrera

pgsql-es-ayuda by date

Next:From: Alvaro HerreraDate: 2006-04-25 17:11:35
Subject: Re: cadenas en plpgsql
Previous:From: Alvaro HerreraDate: 2006-04-25 17:07:31
Subject: Re: insert en Function

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group