Publish date: 2008-06-17

IBProvider v3.0.0.4117. Support of binary data and OCTETS character set

  • OCTETS character set and binary data support in IBProvider v3 was implemented.
  • Fixed bug occuring when accessing to VARCHAR columns with large size via MS SQL Linked server.
  • 64 bits values in metadata schematics are now supported.
  • Data type converter was tested by 43000 unit tests.

OCTETS codepage and binary data support was implemented in IBProvider v. 3.0.0.4117

  • The driver correctly detects and transfers binary data stored in CHAR and VARCHAR columns with OCTETS codepage.
  • Selection and editing of binary data via ADODB library is now supported.

ActiveX component for working with binary data was released

New ActiveX component LCPI.IBP.Samples.BinaryVector provides simpler binary data work. Source codes are available in «Samples\oledb\sample_com_object» folder. 32 bits and 64 bits compilation has supported.

Fixed bug occuring when accessing to VARCHAR columns with large size via MS SQL Linked Server

Issues with data access to VARCHAR columns with size greater than 4000 via Linked Server were resolved.

64 bits values in metadata schematics are now supported

Data type for metadata columns was changed from UInt32 to UInt64:

  • COLUMNS::ORDINAL_POSITION
  • COLUMNS::CHARACTER_MAXIMUM_LENGTH
  • COLUMNS::CHARACTER_OCTET_LENGTH
  • PROCEDURE_COLUMNS::ORDINAL_POSITION
  • PROCEDURE_COLUMNS::CHARACTER_MAXIMUM_LENGTH
  • PROCEDURE_COLUMNS::CHARACTER_OCTET_LENGTH
  • PROCEDURE_PARAMETERS::CHARACTER_MAXIMUM_LENGTH
  • PROCEDURE_PARAMETERS::CHARACTER_OCTET_LENGTH
  • PROVIDER_TYPES::COLUMN_SIZE
  • PRIMARY_KEYS::ORDINAL
  • FOREIGN_KEYS::ORDINAL
  • KEY_COLUMN_USAGE::ORDINAL_POSITION
  • INDEXES::ORDINAL_POSITION

Data type for columns in IColumnsRowset was changed from UInt32 to UInt64:

  • DBCOLUMN_NUMBER
  • DBCOLUMN_COLUMNSIZE

Read about advantages of 64 bits in the article 10 reasons to upgrade InterBase and Firebird to 64 bits.

Data Type Converter

We have finished developing a new data type converter.

The advantages of the new converter are:

Multi-platform compatibility

  • The new converter does not use Windows API and OS information for type conversion. All operations are performed in IBProvider core.
  • Converter now uses memory copy and deallocation operations for VARIANT types in order to avoid problems with unsupported OLE DB types VT_I1, VT_UI2, VT_UI4, VT_I8, VT_UI8 in older Windows versions (9x, NT4, 2000).

Max support for OLE DB types

Support for value types, VARIANT type, arrays, and binary data types has been implemented.

Optimization

New converter has less internal method calls and less memory allocation.

Reliability

More than 43 000 unit tests were coded to test the new converter.

Data type converter and its tests source codes are now available

  • Converter source codes are located in «lib\ole_lib\oledb\variant» folder.
  • Converter tests are located in «TestCode\lib\ole_lib\oledb\variant\test_cvt» folder.
  • Other IBProvider tests are located in «TestCode\ActiveX\IBP» folder.

Publish date: 2008-06-17. Copyright: IBProvider. This material may be reproduced on other web sites, without written permission but link https://www.ibprovider.com/eng required.