Re: Unique UUID value - PostgreSQL 9.2 - Mailing list pgsql-general

From drum.lucas@gmail.com
Subject Re: Unique UUID value - PostgreSQL 9.2
Date
Msg-id CAE_gQfWdO3MSeSK_nrCB_oyOeUGs9et508pwOKKFWZmcpL4uyQ@mail.gmail.com
Whole thread Raw
In response to Re: Unique UUID value - PostgreSQL 9.2  ("David G. Johnston" <david.g.johnston@gmail.com>)
Responses Re: Unique UUID value - PostgreSQL 9.2  ("drum.lucas@gmail.com" <drum.lucas@gmail.com>)
List pgsql-general


SELECT ​'test_'​ || substring(uuid_generate_v4()::text, 1, 1);

Or use a sequence, or just compute "ROW_NUMBER() OVER ()" and tack that on.

David J.


Well.. I was able to do it by using:
INSERT INTO dm.billables_links (billable_id) VALUES ((SELECT billable_id FROM junk.wm_260_billables2 WHERE info ilike '%Alisha%')),
INSERT INTO dm.billables_links (mobiuser_id) VALUES ((SELECT id FROM public.ja_mobiusers WHERE name_first LIKE 'Alisha%' AND name_last LIKE 'Dson%'))


The problem is that I need to do that at the same time, because of a constraint:
ALTER TABLE dm.billables_links ADD CONSTRAINT cc_one_and_only_one_target CHECK ((("customer_id" IS NOT NULL)::integer + ("role_id" IS NOT NULL)::integer + ("mobiuser_id" IS NOT NULL)::integer) = 1);
I'm having trouble by creating that SQL... can anyone help please?

FYI - It has to be in the same transaction because the mobiuser_id must go to the selected billable_id on the first select.

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: How to Qualifying or quantify risk of loss in asynchronous replication
Next
From: "drum.lucas@gmail.com"
Date:
Subject: Re: Unique UUID value - PostgreSQL 9.2