\pset null _null_ SET client_min_messages = warning; SET ROLE postgres; create table tab_generated ( a integer generated by default as identity, b integer generated always as identity, c integer generated always as (a+b) stored, d integer default 42, e serial, f integer ); -- select * from ddlx_describe('tab_generated'::regclass) d; \pset format unaligned select ddlx_script('tab_generated'); ddlx_script BEGIN; /* ALTER TABLE tab_generated ALTER e DROP DEFAULT; DROP TABLE tab_generated; */ -- Type: TABLE ; Name: tab_generated; Owner: postgres CREATE TABLE tab_generated ( a integer GENERATED BY DEFAULT AS IDENTITY, b integer GENERATED ALWAYS AS IDENTITY, c integer GENERATED ALWAYS AS (a + b) STORED, d integer, e integer NOT NULL, f integer ); COMMENT ON TABLE tab_generated IS NULL; ALTER TABLE tab_generated OWNER TO postgres; ALTER TABLE tab_generated ALTER d SET DEFAULT 42; ALTER SEQUENCE tab_generated_e_seq OWNED BY tab_generated.e; -- DEPENDANTS ALTER TABLE tab_generated ALTER e SET DEFAULT nextval('tab_generated_e_seq'::regclass); END; (1 row)