handling numeric literals with dots in psql copy command escreveu: > fi...@filip=# \copy ( select 1.23::numeric as num ) to 'out.csv' with csv > header > ERROR: syntax error at or near "." > LINE 1: COPY ( select 1 . 23::numeric as num ) TO STDOUT CSV HEADER > ^ > \copy: ERROR: syntax error at or near "." > LINE 1: COPY ( select 1 . 23::numeric as num ) TO STDOUT CSV HEADER > ^ > > query inside parentheses is OK. > > same bug reproduced in 8.3.7 > Thanks for your report.
Why are we analysing the query there? One possible fix is to remove the '.' as delimiter in strtokx(). The trivial patch is attached. -- Euler Taveira de Oliveira http://www.timbira.com/
Index: copy.c =================================================================== RCS file: /a/pgsql/dev/anoncvs/pgsql/src/bin/psql/copy.c,v retrieving revision 1.80 diff -c -r1.80 copy.c *** copy.c 26 Apr 2009 15:31:50 -0000 1.80 --- copy.c 17 Jul 2009 19:41:58 -0000 *************** *** 146,152 **** while (parens > 0) { ! token = strtokx(NULL, whitespace, ".,()", "\"'", nonstd_backslash, true, false, pset.encoding); if (!token) goto error; --- 146,152 ---- while (parens > 0) { ! token = strtokx(NULL, whitespace, ",()", "\"'", nonstd_backslash, true, false, pset.encoding); if (!token) goto error;
-- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs