diff options
author | Wastack <btomi96@gmail.com> | 2016-11-27 15:08:18 +0100 |
---|---|---|
committer | Lionel Elie Mamane <lionel@mamane.lu> | 2016-12-11 10:43:22 +0000 |
commit | 1d0f3649ba271a439ab38d35ce02462561cc9caa (patch) | |
tree | 8fcc82e030bba4ff29783cf6f22149deb98e4986 /connectivity/source/drivers/firebird/Util.cxx | |
parent | tdf#104227 query boolean like infos correctly (diff) | |
download | core-1d0f3649ba271a439ab38d35ce02462561cc9caa.tar.gz core-1d0f3649ba271a439ab38d35ce02462561cc9caa.zip |
tdf#103074 Implement Boolean Type for FB driver
Change-Id: Ibed5435e23730dc901155e79152e9becd3e70566
Reviewed-on: https://gerrit.libreoffice.org/31262
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
Diffstat (limited to 'connectivity/source/drivers/firebird/Util.cxx')
-rw-r--r-- | connectivity/source/drivers/firebird/Util.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/connectivity/source/drivers/firebird/Util.cxx b/connectivity/source/drivers/firebird/Util.cxx index 1502e60c5286..7d72900a4788 100644 --- a/connectivity/source/drivers/firebird/Util.cxx +++ b/connectivity/source/drivers/firebird/Util.cxx @@ -127,6 +127,8 @@ sal_Int32 firebird::getColumnTypeFromFBType(short aType, short aSubType) return DataType::SQLNULL; case SQL_QUAD: // Is a "Blob ID" according to the docs return 0; // TODO: verify + case SQL_BOOLEAN: + return DataType::BOOLEAN; default: assert(false); // Should never happen return 0; @@ -185,6 +187,8 @@ OUString firebird::getColumnTypeNameFromFBType(short aType, short aSubType) return OUString("SQL_NULL"); case SQL_QUAD: return OUString("SQL_QUAD"); + case SQL_BOOLEAN: + return OUString("SQL_BOOLEAN"); default: assert(false); // Should never happen return OUString(); @@ -231,6 +235,8 @@ short firebird::getFBTypeFromBlrType(short blrType) // return OUString("SQL_NULL"); case blr_quad: return SQL_QUAD; + case blr_bool: + return SQL_BOOLEAN; default: // If this happens we have hit one of the extra types in ibase.h // look up blr_* for a list, e.g. blr_domain_name, blr_not_nullable etc. @@ -286,6 +292,9 @@ void firebird::mallocSQLVAR(XSQLDA* pSqlda) case SQL_INT64: pVar->sqldata = static_cast<char *>(malloc(sizeof(sal_Int64))); break; + case SQL_BOOLEAN: + pVar->sqldata = static_cast<char *>(malloc(sizeof(sal_Bool))); + break; case SQL_NULL: assert(false); // TODO: implement break; @@ -321,6 +330,7 @@ void firebird::freeSQLVAR(XSQLDA* pSqlda) case SQL_INT64: case SQL_TYPE_TIME: case SQL_TYPE_DATE: + case SQL_BOOLEAN: if(pVar->sqldata) { free(pVar->sqldata); |