The reverse engineered code for column definitions if incorrect for DEFAULT values.
I create table such as:
 
REATE TABLE public.tbl_bkgndata
(
  id int4 NOT NULL DEFAULT nextval('tbl_bkgndata_id_seq'::text),
) WITHOUT OIDS;
 
Reverse engineered column definition is:
 
ALTER TABLE public.tbl_bkgndata ADD COLUMN id int4;
ALTER TABLE public.tbl_bkgndata ALTER COLUMN id SET STORAGE PLAIN;
ALTER TABLE public.tbl_bkgndata ALTER COLUMN id SET NOT NULL;
ALTER TABLE public.tbl_bkgndata ALTER COLUMN id DEFAULT nextval('tbl_bkgndata_id_seq'::text);
 
Last row should read:
ALTER TABLE public.tbl_bkgndata ALTER COLUMN id SET DEFAULT nextval('tbl_bkgndata_id_seq'::text);
 
That is the key word SET is missing.
 
Regards
Donald Fraser.

Reply via email to