From: | Diego Ayala <netdiego81(at)gmail(dot)com> |
---|---|
To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | Postgres Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: error al borrar un registro |
Date: | 2010-06-15 11:12:06 |
Message-ID: | AANLkTin-avbva386tdi8YXKR-8qIJFTisKnDAeem8UKD@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Muchas gracias Alvaro, tienes razon, la estructura de la tabla que contiene
la FK apuntando a mi tabla rrhh.cargo es esta
CREATE TABLE usuario.funcionario
(
id bigint NOT NULL, -- PK, campo identificador.
cargo_id bigint NOT NULL, -- Referencia al cargo del funcionario.
funcionario_id_superior bigint, -- Referencia al superior inmediato.
email_institucional_interno character varying(100) NOT NULL, -- Dirección
de Email interno de la DNCP.
email_institucional_externo character varying(100), -- Dirección de email
externo de la DNCP.
interno character varying(10), -- Interno del telefono institucional.
departamento_id bigint,
acceso_externo boolean NOT NULL DEFAULT false,
CONSTRAINT pk_funcionario PRIMARY KEY (id),
CONSTRAINT fk_funcionario_cargo FOREIGN KEY (cargo_id)
REFERENCES rrhh.cargo (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_funcionario_departamento FOREIGN KEY (departamento_id)
REFERENCES rrhh.departamento (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_funcionario_funcionario_superior FOREIGN KEY
(funcionario_id_superior)
REFERENCES usuario.funcionario (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT fk_funcionario_usuario FOREIGN KEY (id)
REFERENCES usuario.usuario (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION,
CONSTRAINT funcionario_email_institucional_interno_key UNIQUE
(email_institucional_interno)
)
WITH (
OIDS=TRUE
);
ALTER TABLE usuario.funcionario OWNER TO dayala;
GRANT ALL ON TABLE usuario.funcionario TO dayala;
GRANT ALL ON TABLE usuario.funcionario TO sicp;
GRANT SELECT ON TABLE usuario.funcionario TO reporte;
He corregido estos privilegios, y ya he podido borrar los registros..!!
El 14 de junio de 2010 17:26, Alvaro Herrera
<alvherre(at)commandprompt(dot)com>escribió:
> Excerpts from Diego Ayala's message of lun jun 14 16:43:48 -0400 2010:
> > La tabla no contiene FKs, esta es la estructura actual
>
> No, pero ya dijiste que hay otra tabla que apunta a esta. Ten en cuenta
> que los chequeos de FK se ejecutan con los privilegios del dueño de la
> tabla; no hacerlo sería un problema de seguridad.
>
> En resumen, corrige los permisos, y no uses superusuarios.
>
> --
> Álvaro Herrera <alvherre(at)commandprompt(dot)com>
> The PostgreSQL Company - Command Prompt, Inc.
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>
--
Diego Ayala
From | Date | Subject | |
---|---|---|---|
Next Message | Fernando Aguada | 2010-06-15 11:49:34 | Re: [pgsql-es-ayuda] Instalación en windows 2000 |
Previous Message | mario martinez hernandez | 2010-06-15 07:28:39 | Modificar tamaño de pg_xlog |