[
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)