| From: | Navneet Kumar <thanit3111(at)gmail(dot)com> |
|---|---|
| To: | jian he <jian(dot)universality(at)gmail(dot)com> |
| Cc: | ego alter <xunengzhou(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: support virtual generated column not null constraint |
| Date: | 2025-03-07 18:09:34 |
| Message-ID: | CANzA6sqsVeN-p8dqtM7v4376neOE74CDLfZKwvWG7zb7a+btZQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
>
> This scenario fails
> 1. CREATE TABLE person (
> id INT GENERATED BY DEFAULT AS IDENTITY,
> first_name VARCHAR(50) NOT NULL,
> last_name VARCHAR(50) NOT NULL
> );
>
> 2. INSERT INTO person (first_name, last_name)
> VALUES ('first', 'last');
>
> 3. ALTER TABLE person
> ADD COLUMN full_name VARCHAR(100) GENERATED ALWAYS AS (first_name || ' '
> || last_name) VIRTUAL;
>
Forgot to mention NOT NULL constraint in above query.
3. ALTER TABLE person
ADD COLUMN full_name VARCHAR(100) NOT NULL GENERATED ALWAYS AS (first_name
|| ' ' || last_name) VIRTUAL;
ERROR: column "full_name" of relation "person" contains null values
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Álvaro Herrera | 2025-03-07 18:20:34 | Re: pgsql: reindexdb: Add the index-level REINDEX with multiple jobs |
| Previous Message | Tom Lane | 2025-03-07 17:57:25 | Re: Commitfest app release on Feb 17 with many improvements |