From: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
---|---|
To: | Lorusso Domenico <domenico(dot)l76(at)gmail(dot)com>, pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: Composite type: Primary Key and validation |
Date: | 2023-06-05 14:02:12 |
Message-ID: | ae41cf7917a17d8399478035e98c65ba91b35e9f.camel@cybertec.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Mon, 2023-06-05 at 11:49 +0200, Lorusso Domenico wrote:
> I've a couple of questions about composite type.
> Suppose this composite type:
> CREATE TYPE my_type AS (
> user_ts_start My_start_timestamp,
> user_ts_end My_end_timestamp,
> db_ts_start My_start_timestamp,
> db_ts_end My_end_timestamp,
> audit_record jsonb
> );
> My_start_timestamp is a domain of timestamp with default as now().
> My_end_timestamp is a domain of timestamp with default as infinite
>
> 1. May I use user_ts_start and/or db_ts_start has part of Primary Key of a table that contains a field of my_type?
> 2. to add an overall check constraint on the entire composite type, could be a valid
> approach to create a domain based on my_type and add a custom function to validate it? (check_my_type(VALUE)).
> In this way I've a dominan of composite type that contain others domain... what do you think?
Avoid using composite types as data types for a table column.
It adds complexity for no clear gain.
Yours,
Laurenz Albe
From | Date | Subject | |
---|---|---|---|
Next Message | Ron | 2023-06-05 14:17:49 | Re: Composite type: Primary Key and validation |
Previous Message | Jelte Fennema | 2023-06-05 11:43:42 | Re: Adding SHOW CREATE TABLE |