Thread: timestamp 'default' question
All, I have a TABLE entry for time: timeaccessioned | timestamp without time zone | not null default ('now'::text)::timestamp(6) with time zone w/ default set to 'now', I thought postgres would fill in time - not so? When I attempt to load feature table w/out time entered -> psql:feature.stdin:1: ERROR: copy: line 1, Missing data for column "timeaccessioned" COPY feature (feature_id, dbxref_id, organism_id, name, uniquename, residues, seqlen, md5checksum, type_id, timeaccessioned, timelastmodified) FROM stdin; 1 \N 133 scaffold_1 chlre01.1 AAATCCAAGC 376197 53adae6396a767c7e88910c73b9d0b6b 3 \. Can I get postgres to load current time, or do I need to generate it in the script creating the SQL? Charles
> w/ default set to 'now', I thought postgres would fill in time - not > so? Try now() CREATE TABLE users ( creation_date timestamp DEFAULT 'now()' NOT NULL ); Jeff
Charles Hauser <chauser@duke.edu> writes: > When I attempt to load feature table w/out time entered -> > psql:feature.stdin:1: ERROR: copy: line 1, Missing data for column > "timeaccessioned" Well, yes, because your COPY command is claiming that all eleven columns will be supplied in the input: > COPY feature (feature_id, dbxref_id, organism_id, name, uniquename, > residues, seqlen, md5checksum, type_id, timeaccessioned, > timelastmodified) FROM stdin; > 1 \N 133 scaffold_1 chlre01.1 AAATCCAAGC > 376197 53adae6396a767c7e88910c73b9d0b6b 3 > \. I think what you probably intend is COPY feature (feature_id, dbxref_id, organism_id, name, uniquename, residues, seqlen, md5checksum, type_id) FROM stdin; which tells COPY to read those columns from the input and insert defaults for the remaining columns. regards, tom lane