Re: Function PostgreSQL 9.2 - Mailing list pgsql-general

From Melvin Davidson
Subject Re: Function PostgreSQL 9.2
Date
Msg-id CANu8Fiwq4G4U-OAWb0AnOGGQ0jSepBjXEt+iOPV-p3c1T2mCNQ@mail.gmail.com
Whole thread Raw
In response to Re: Function PostgreSQL 9.2  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: Function PostgreSQL 9.2  ("drum.lucas@gmail.com" <drum.lucas@gmail.com>)
List pgsql-general


On Tue, May 3, 2016 at 1:21 AM, David G. Johnston <david.g.johnston@gmail.com> wrote:

Well.. I don't need to add a constraint if I already have a default value, that's right...

Wrong
 
David J.

What you need is a TRIGGER function & TRIGGER that will select  and assign the next users_code based on company_id.
I'm not going to write the whole thing for you, but here is part of the trigger function logic.

eg: IF NEW.company_id = 1 THEN
              NEW.users_code = NEXTVAL(c1_users_code_seq);
      ELSEIF  NEW.company.id = 2 THEN
              NEW.users_code =  NEXTVAL(c2_users_code_seq);
      ELSEIF  NEW.company.id = 3 THEN
              NEW.users_code =  NEXTVAL(c3_users_code_seq);
      ...
      ...
      ELSE
          <    something bad happened because NEW.company_id was not valid ?
      END IF;


Seriously, get yourself the books I have recommended and study them  BEFORE you continue attempting to design your database.
You need a firm understanding of logical design & flow, otherwise you will be wasting your time.

--
Melvin Davidson
I reserve the right to fantasize.  Whether or not you
wish to share my fantasy is entirely up to you.

pgsql-general by date:

Previous
From: uğur Karabin
Date:
Subject: Re: Does the initial postgres user have a password?
Next
From: Tom Lane
Date:
Subject: Re: Vacuum full of parent without partitions possible?