summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulien Nabet <serval2412@yahoo.fr>2020-02-16 13:36:45 +0100
committerXisco FaulĂ­ <xiscofauli@libreoffice.org>2020-02-17 11:25:33 +0100
commit08eede3a026e8d788a5f877c5fd646e685fd0d5e (patch)
treee0955172721e6d306a96b3887ed18ec2220d6916
parente5112f1800a8fe60fe6e9bc6c96d3de12a8a142a (diff)
tdf#130708: Firebird: fix wrong precision and scale for DECIMAL and NUMERIC
See https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref25-datatypes.html Change-Id: I2377679bb925425ceb0bf80c5309005421fe2c2b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88778 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr> (cherry picked from commit 4605dfa29649864638187940de4d1064ff056ac8) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88786 Reviewed-by: Xisco FaulĂ­ <xiscofauli@libreoffice.org>
-rw-r--r--connectivity/source/drivers/firebird/DatabaseMetaData.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/connectivity/source/drivers/firebird/DatabaseMetaData.cxx b/connectivity/source/drivers/firebird/DatabaseMetaData.cxx
index c152694a5963..b2ca13fb56f3 100644
--- a/connectivity/source/drivers/firebird/DatabaseMetaData.cxx
+++ b/connectivity/source/drivers/firebird/DatabaseMetaData.cxx
@@ -934,16 +934,16 @@ uno::Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTypeInfo()
// Numeric
aRow[1] = new ORowSetValueDecorator(OUString("NUMERIC"));
aRow[2] = new ORowSetValueDecorator(DataType::NUMERIC);
- aRow[3] = new ORowSetValueDecorator(sal_Int16(15)); // Precision
- aRow[14] = new ORowSetValueDecorator(sal_Int16(1)); // Minimum scale
- aRow[15] = new ORowSetValueDecorator(sal_Int16(15)); // Max scale
+ aRow[3] = new ORowSetValueDecorator(sal_Int16(18)); // Precision
+ aRow[14] = new ORowSetValueDecorator(sal_Int16(0)); // Minimum scale
+ aRow[15] = new ORowSetValueDecorator(sal_Int16(18)); // Max scale
tmp.push_back(aRow);
// Decimal
aRow[1] = new ORowSetValueDecorator(OUString("DECIMAL"));
aRow[2] = new ORowSetValueDecorator(DataType::DECIMAL);
- aRow[3] = new ORowSetValueDecorator(sal_Int16(15)); // Precision
- aRow[14] = new ORowSetValueDecorator(sal_Int16(1)); // Minimum scale
- aRow[15] = new ORowSetValueDecorator(sal_Int16(15)); // Max scale
+ aRow[3] = new ORowSetValueDecorator(sal_Int16(18)); // Precision
+ aRow[14] = new ORowSetValueDecorator(sal_Int16(0)); // Minimum scale
+ aRow[15] = new ORowSetValueDecorator(sal_Int16(18)); // Max scale
tmp.push_back(aRow);
aRow[6] = new ORowSetValueDecorator(); // Create Params