Enforce maximum precision on float
----------------------------------

                 Key: CORE-5734
                 URL: http://tracker.firebirdsql.org/browse/CORE-5734
             Project: Firebird Core
          Issue Type: Bug
          Components: Engine
    Affects Versions: 2.5.8, 4.0 Alpha 1, 3.0.2
            Reporter: Mark Rotteveel
            Priority: Minor


Firebird currently allows creation of float columns with a precision that 
exceeds the actual implementation precision. A double precision has about 16 
decimal digits precision, and this is the maximum supported by Firebird. 
However it is possible to create a float(100) (which still results in a double 
precision).

The SQL Standard (6.1 <data type>) says:
"""
29) FLOAT specifies the data type approximate numeric, with binary precision 
equal to or greater than the value of the specified <precision>. The maximum 
value of <precision> is implementation-defined. <precision> shall not be 
greater than this value.
"""

Given we do not provide a precision larger than 16, the precision should be 
capped at 16, attempts to create a float(p) with p > 16 should yield an error.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to