IBM Informix Release Notes for IBM Informix Binary DataBlade Module 1.00.UC1, March 22, 2006 ================================= TABLE OF CONTENTS I. OVERVIEW OF RELEASE NOTES II. NEW FEATURES III. IBM INFORMIX DYNAMIC SERVER COMPATIBILITY IV. REGISTERING THE BINARY DATABLADE MODULE V. UNREGISTERING THE BINARY DATABLADE MODULE VI. KNOWN PROBLEMS AND WORKAROUNDS +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ I. OVERVIEW OF RELEASE NOTES ============================= The purpose of these release notes is to make you aware of any special actions required to register, configure, and use the Binary DataBlade module on your computer. This file also describes new features and feature differences from earlier versions of this product and other IBM Informix products, and how these differences affect current products. In addition, this file contains information about known bugs and their workarounds. These release notes are written for the following audience: o System administrators who install IBM Informix Dynamic Server and the Binary DataBlade module o Database administrators who control access to IBM Informix Dynamic Server databases o Developers who write applications using the Binary DataBlade module II. NEW FEATURES ================= This is a new datablade that provides an indexable binary datatype to IBM Informix Dynamic Server. It is similar to the CHAR FOR BIT DATA type in IBM DB2 Universal Database and Oracle's RAW data type. It is a variable length opaque type with a maximum length of 255 bytes. The binaryvar data type takes its input as a series of bytes. The bytes can be either stored directly in a variable or via its ASCII 2 hexadecimal (0-9,A-F) digit equivalent. The characters A-F may be represented in either upper case or lower case. If the ASCII representation is used, an even number of bytes must be entered, otherwise an error will be generated. It is permissible to add a leading '0X' prefix to the string, but no spaces or other separators are supported in the ASCII representation. Example: create table bindata_test (int_col integer, bin_col binaryvar) insert into bindata_test values (1, '30313233343536373839') insert into bindata_test values (2, '0X30313233343536373839') This would store the binary string of 0123456789 on disk. The following IBM Informix Dynamic Server built-in string functions are supported in this release: length(), octet_length() Example: select length(bin_col) from bindata_test where int_col=1; (expression) 10 Index operations This type has support for indexing via the Btree method in this release. Nested loop joins are supported, but hash joins between binaryvar columns are not supported in this release. This also impacts GROUP BY and COUNT DISTINCT operations on this data type. Bitwise operations The following bitwise operations are supported in this release: AND (bit_and), OR (bit_or), XOR (bit_xor), NOT (bit_complement). The bit_and, bit_or, and bit_xor functions take 2 binaryvar columns or expressions as arguments. The bit_complement function takes a single binaryvar column or expression. If either argument is NULL, a NULL binaryvar is returned. If the lengths of the two arguments are different, the operation is performed up to the length of the shorter string. The data from the longer string is copied into the result from that point. Example: create table bindata_test (int_col integer, bin_col binaryvar) insert into bindata_test values (1, '00001000'); insert into bindata_test values (2, '00002000'); insert into bindata_test values (3, '00004000'); insert into bindata_test values (4, '023A2DE4'); select bit_or(bin_col, '00004000') from bindata_test where int_col=2; (expression) 00006000 select bit_and(bit_or(bin_col, '40404040'), '01010200') from bindata_test where int_col=2; (expression) 00000000 select bit_complement(bin_col) from bindata_test where int_col=4; (expression) FDC5D21B select bit_xor(bin_col,'00004040') from bindata_test where int_col=3; (expression) 00000040 III. IBM INFORMIX DYNAMIC SERVER COMPATIBILITY =============================================== Version 1.00.UC1 of the Binary DataBlade module is compatible with IBM Informix Dynamic Server Version 9.13.UC3 or later. IV. REGISTERING THE BINARY DATABLADE MODULE ================================================= To use the Binary DataBlade module, you must register it using BladeManager in each database in which it will be used. See the "BladeManager User's Guide" for instructions on how to register DataBlade modules. NOTE: You cannot register the Binary DataBlade module into an ANSI- compliant database. This is because BladeManager does not currently support the registration of any DataBlade module into ANSI-compliant databases. V. UNREGISTERING THE BINARY DATABLADE MODULE ================================================== Unregistration removes the definitions for a DataBlade module's user- defined data types and routines. You can unregister a DataBlade module that was previously installed only if there is no data in your database that uses the definitions defined by the DataBlade module. This means, for example, that if a table is currently using the binaryvar or binary18 data type, you will not be able to unregister the Binary DataBlade module from your database. Unregistration is only available for modules that were registered with BladeManager. Refer to the "BladeManager User's Guide" for instructions on how to unregister DataBlade modules. VI. KNOWN PROBLEMS AND WORKAROUNDS =================================== There are no known issues with this release. Contact support: http://www.ibm.com/software/data/informix/ids/support/ (C) Copyright IBM Corp. 2006, 2012