How to make a non-removable row in a table?

From: Капралов Александр <alnkapa(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: How to make a non-removable row in a table?
Date: 2011-12-19 06:43:58
Message-ID: CAJqqVEXwJUAb7nG7GHg+K93GvaRpM8ubgXkn5nOBYz5FOUSP6g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi all.

How to make a non-removable row in a table?

In my case, I should not accidentally delete a row with id = 0.

CREATE TABLE profile (

id integer NOT NULL,

name character varying(265) NOT NULL

);

CREATE SEQUENCE profile_id_seq
START WITH 1
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;

ALTER TABLE profile ALTER COLUMN id SET DEFAULT
nextval('profile_id_seq'::regclass);

ALTER TABLE ONLY profile ADD CONSTRAINT profile_pkey PRIMARY KEY (id);

INSERT INTO profile VALUES (0,'non-removable Profile');

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Yan Chunlu 2011-12-19 06:54:21 ignore duplicate key while using COPY?
Previous Message Yan Chunlu 2011-12-19 05:28:42 Re: pg_dump and pg_restore make data dir doubled size?