[ 
https://issues.apache.org/jira/browse/DERBY-7009?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lukas Eder updated DERBY-7009:
------------------------------
    Description: 
In the manual, there is a claim that the maximum precision for the DECIMAL data 
type is 31:
{quote}The _precision_ must be between 1 and 31. The _scale_ must be less than 
or equal to the precision.
{quote}
[https://db.apache.org/derby/docs/10.14/ref/rrefsqlj15260.html]

This can be confirmed via the following failing statements:

{{CREATE TABLE test (i decimal(33, 3));}}
 {{SELECT cast(123.45 AS decimal(33, 3)) FROM sysibm.SYSDUMMY1;}}

However, this statement works:

{{CREATE VIEW x(a, b) AS}}
{{select 123456789012345678901234567890.001, 123456789012345678901234567890.001 
from SYSIBM.SYSDUMMY1;}}

And a quick query against the dictionary views shows that the type is 
definitely DECIMAL(33, 3):

{{SELECT COLUMNDATATYPE}}
 {{FROM SYS.SYSCOLUMNS}}
 {{WHERE COLUMNNAME IN ('A', 'B');}}

Yielding:

{{COLUMNDATATYPE         |}}
 {{-----------------------|}}
 {{DECIMAL(33,3) NOT NULL |}}
 {{DECIMAL(33,3) NOT NULL |}}

For consistency reasons, the latter should fail just like the former two.

 

  was:
In the manual, there is a claim that the maximum precision for the DECIMAL data 
type is 31:
{quote}The _precision_ must be between 1 and 31. The _scale_ must be less than 
or equal to the precision.
{quote}
[https://db.apache.org/derby/docs/10.14/ref/rrefsqlj15260.html]

This can be confirmed via the following failing statements:

{{CREATE TABLE test (i decimal(33, 3));}}
{{SELECT cast(123.45 AS decimal(33, 3)) FROM sysibm.SYSDUMMY1;}}

However, this statement works:

{{CREATE VIEW x(a, b) AS }}
{{select 123456789012345678901234567890.001, 123456789012345678901234567890.001 
from SYSIBM.SYSDUMMY1;}}

And a quick query against the dictionary views shows that the type is 
definitely DECIMAL(33, 3):

{{SELECT COLUMNDATATYPE}}
{{FROM SYS.SYSCOLUMNS}}
{{WHERE COLUMNNAME IN ('A', 'B');}}

Yielding:

{{COLUMNDATATYPE         |}}
{{-----------------------|}}
{{DECIMAL(33,3) NOT NULL |}}
{{DECIMAL(33,3) NOT NULL |}}

For consistency reasons, the latter should fail just like the former two.

 


> DECIMAL(33, 3) Type cannot be used in CAST expression, but can appear in views
> ------------------------------------------------------------------------------
>
>                 Key: DERBY-7009
>                 URL: https://issues.apache.org/jira/browse/DERBY-7009
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.14.2.0
>            Reporter: Lukas Eder
>            Priority: Major
>
> In the manual, there is a claim that the maximum precision for the DECIMAL 
> data type is 31:
> {quote}The _precision_ must be between 1 and 31. The _scale_ must be less 
> than or equal to the precision.
> {quote}
> [https://db.apache.org/derby/docs/10.14/ref/rrefsqlj15260.html]
> This can be confirmed via the following failing statements:
> {{CREATE TABLE test (i decimal(33, 3));}}
>  {{SELECT cast(123.45 AS decimal(33, 3)) FROM sysibm.SYSDUMMY1;}}
> However, this statement works:
> {{CREATE VIEW x(a, b) AS}}
> {{select 123456789012345678901234567890.001, 
> 123456789012345678901234567890.001 from SYSIBM.SYSDUMMY1;}}
> And a quick query against the dictionary views shows that the type is 
> definitely DECIMAL(33, 3):
> {{SELECT COLUMNDATATYPE}}
>  {{FROM SYS.SYSCOLUMNS}}
>  {{WHERE COLUMNNAME IN ('A', 'B');}}
> Yielding:
> {{COLUMNDATATYPE         |}}
>  {{-----------------------|}}
>  {{DECIMAL(33,3) NOT NULL |}}
>  {{DECIMAL(33,3) NOT NULL |}}
> For consistency reasons, the latter should fail just like the former two.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to