From: | cbeltran <cbeltran(at)roldan(dot)net> |
---|---|
To: | AyudaPostgres <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Como prohibir tajantamente que una columna de una tabla sea modificada? |
Date: | 2004-10-06 16:35:15 |
Message-ID: | 057301c4abc2$77523d60$272615ac@tania |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Por ser aplicativos WEB (con logica de negocio en PHP) y procesamiento distribuido (en diferentes servers con la BD postgres replicada a un servidor central ), se definieron todas las tablas de la base de datos con una secuencia similar al siguiente ejemplo:
CREATE SEQUENCE terceros_id_seq start XX0000001 increment 1 maxvalue 999999999 minvalue 1 cache 1 ;
CREATE TABLE terceros (
terceros_id integer DEFAULT nextval('terceros_id_seq'::text) NOT NULL,
tercero integer NOT NULL,
digito_verificacion char(1),
...
...
Constraint pk_terceros Primary Key (terceros_id)
);
donde XX el numero de la sucursal.
Y dado que la replica opera con base a ese ID que es primary key (terceros_id del ejemplo), es necesario asegurar que ningun aplicativo o manejador tipo PgAccess modifique dicho contenido via UPDATE. Es decir que solo permita consultar el ID o borrar completamente la linea, mas no modificar dicho ID.
Cual seria la forma adecuada de prohibir tajantemente que ese contenido (terceros_id del ejemplo) sea modificado?
De antemano gracias por la colaboracion.
Carlos Beltran V.
Roldan SIA SA Bogota Colombia.
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2004-10-06 17:17:12 | Re: Mi ser |
Previous Message | Alvaro Herrera | 2004-10-06 16:12:56 | Re: Mi ser |