Thread: postgres 7.4.2: float(20) results in error msg, but should not since 7.4)
While trying to install the roundup issue tracking system I discovered the following - faulty - behaviour: My fresh postgres 7.4.2 install on a FreeBSD 5.2-CURRENT machine replies "ERROR: precision for FLOAT must be less than 16" to "create table otks (otk_key varchar(255),otk_value varchar(255),otk_time float(20));" Now http://www.postgresql.org/docs/7.4/static/datatype.html#DATATYPE-FLOAT says "PostgreSQL accepts float(1) to float(24) as selecting the real type, while float(25) to float(53) select double precision." and "Note: Prior to PostgreSQL 7.4, the precision in float(p) was taken to mean so many decimal digits. This has been corrected to match the SQL standard, which specifies that the precision is measured in binary digits." So it should work, I guess. Are there any switches to alter this behaviour, or is this a bug?? Thanks, Mathias
On Sat, 3 Apr 2004, Mathias Picker wrote: > While trying to install the roundup issue tracking system I discovered > the following - faulty - behaviour: > > My fresh postgres 7.4.2 install on a FreeBSD 5.2-CURRENT machine replies > > "ERROR: precision for FLOAT must be less than 16" > > to > > "create table otks (otk_key varchar(255),otk_value > varchar(255),otk_time float(20));" It appears to work for me on a just compiled 7.4.2 under Redhat 8: template1=# create table otks (otk_key varchar(255),otk_value template1(# varchar(255),otk_time float(20)); CREATE TABLE template1=# select version(); version --------------------------------------------------------------------------------------------------------- PostgreSQL 7.4.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2 20020903 (Red Hat Linux 8.0 3.2-7) (1 row)
Mathias Picker <Mathias.Picker@virtual-earth.de> writes: > My fresh postgres 7.4.2 install on a FreeBSD 5.2-CURRENT machine replies > "ERROR: precision for FLOAT must be less than 16" This is certainly pilot error: you are talking to a 7.3 or earlier server. 7.4's corresponding error message isn't even spelt the same. regards, tom lane