[Libreoffice-bugs] [Bug 125957] FIREBIRD: Datatype Binary(fix) [CHAR] couldn't be filled with content

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Fri May 15 17:42:25 UTC 2020


https://bugs.documentfoundation.org/show_bug.cgi?id=125957

Julien Nabet <serval2412 at yahoo.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://bugs.documentfounda
                   |                            |tion.org/show_bug.cgi?id=10
                   |                            |4734
                 CC|                            |btomi96 at gmail.com,
                   |                            |lionel at mamane.lu,
                   |                            |miguelangelrv at libreoffice.o
                   |                            |rg, serval2412 at yahoo.fr

--- Comment #3 from Julien Nabet <serval2412 at yahoo.fr> ---
On pc Debian x86-64 with master sources updated today, I could reproduce this.

This type has been added with this block:
    865         // Binary (CHAR)
    866         // It is distinguished from Text type by its character set
    867         aRow[1] = new ORowSetValueDecorator(OUString("CHAR"));
    868         aRow[2] = new ORowSetValueDecorator(DataType::BINARY);
    869         aRow[3] = new ORowSetValueDecorator(sal_Int16(32765)); //
Prevision = max length
    870         aRow[6] = new ORowSetValueDecorator(OUString("length")); //
Create Params
    871         aRow[9] = new ORowSetValueDecorator(
    872                 sal_Int16(ColumnSearch::NONE)); // Searchable
    873         aRow[14] = ODatabaseMetaDataResultSet::get0Value(); // Minimum
scale
    874         aRow[15] = ODatabaseMetaDataResultSet::get0Value(); // Max
scale
    875         tmp.push_back(aRow);
See
https://opengrok.libreoffice.org/xref/core/connectivity/source/drivers/firebird/DatabaseMetaData.cxx?r=572c9db0#865
in commit
https://cgit.freedesktop.org/libreoffice/core/commit/?id=bf662904c4b60e93c6b86e06288d41996eed12a2
author  Tamas Bunth <tamas.bunth at collabora.co.uk>       2017-12-16 12:57:43
+0100
committer       Tamás Bunth <btomi96 at gmail.com> 2017-12-28 10:39:48 +0100
commit  bf662904c4b60e93c6b86e06288d41996eed12a2 (patch)
tree    e3508e2504a07622559793393fcbc19023157bfd
parent  3c567e55e6aed9e0da892d8b9fc09f8a0c784fcc (diff)
tdf#104734 Firebird: Add Binary (fix) type
There is no explicit binary type in Firebird. It can be accomplished
using the CHAR type with a special character set, which tells the
database that it is binary data and there is no collation. (called
OCTETS).

Because of that, we also need the character set to decide the exact
column type.

And also refactor some parts of the driver:
- Create class to determine internal type from firebird type, subtype,
scale and character set.
- Use internal type (DataType::XXX) in XDatabaseMetaData::getTypeInfo()
indirectly. (We want to return a Firebird type for each internal type,
not in the opposite direction.

I can remove the block but perhaps it should be fixed, in this case, I don't
know what should be done.

Lionel/Tamas: don't hesitate to share your thoughts about it.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20200515/26f930e1/attachment.htm>


More information about the Libreoffice-bugs mailing list