Main   Products   Offshore Outsourcing   Customers   Partners   ContactUs  
JDBC Databases
  HXTT Access 7.1.253
 
  Buy Now
  Support
  Download
  Document
  FAQ
  HXTT Cobol 5.0.252
  HXTT DBF 7.1.253
  HXTT Excel 6.1.256
  HXTT Json 1.0.224
  HXTT Paradox 7.1.252
  HXTT PDF 2.0.252
  HXTT Text(CSV) 7.1.252
  HXTT Word 1.1.252
  HXTT XML 4.0.253
Offshore Outsourcing
Free Resources
  Firewall Tunneling
  Search Indexing Robot
  Conditional Compilation
  Password Recovery for MS Access
  Password Recovery for Corel Paradox
  Checksum Tool for MD5
  Character Set Converter
  Pyramid - Poker of ZYH
   
   
   
Heng Xing Tian Tai Lab of Xi'an City (abbr, HXTT)

HXTT ACCESS
Using a COALESCE function throws a java.lang.ArrayIndexOutOfBoundsException
Govind
2013-08-08 11:24:26
Hi,
We are facing a problem after upgrading the HXTT driver from
Specification-Version: 5.1.126 [ April 08, 2013 ] to
Specification-Version: 5.1.150 [ June 25, 2013 ]

Please find the query below. The final update query works on the driver v5.1.126 and fails on the v5.1.150

Please provide a fix as soon as possible.

DROP TABLE if exists [UIP_Target];

CREATE TABLE [UIP_Target]
([key_string] VARCHAR(10) NULL,
[key_int] INTEGER NULL,
[data_string] VARCHAR(80) NULL,
[data_int] INTEGER NULL,
[data_decimal] DECIMAL(8,2) NULL);

INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES (null,111,'Mike',74832,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES (null,null,'default',334455,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES (null,111,'Mike',74832,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES (null,null,'default',334455,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES ('AAA',111,'default',-999,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES ('AAA',null,'Keith',-999,9.75);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES ('AAA',111,'default',-999,-9999.99);
INSERT INTO UIP_Target (key_string,key_int,data_string,data_int,data_decimal) VALUES ('AAA',null,'Keith',-999,9.75);

DROP TABLE if exists [DP3475];

CREATE TABLE [DP3475]
([KEY208] VARCHAR(10) NOT NULL,
[KEY572] INTEGER NOT NULL,
[key_string] VARCHAR(10) NULL,
[key_int] INTEGER NULL,
[data_string] VARCHAR(80) NULL,
[data_int] INTEGER NULL,
[data_decimal] NUMBER(8,2) NULL,
CONSTRAINT [KDP3475] PRIMARY KEY([KEY208], [KEY572]));

INSERT INTO DP3475 (KEY208,KEY572,key_string,key_int,data_string,data_int,data_decimal) VALUES ('AAA',111,'AAA',111,null,100,234.45);


UPDATE "UIP_Target" SET "key_string" = (SELECT COALESCE(DP3475."key_string", "UIP_Target"."key_string") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572"), "key_int" = (SELECT COALESCE(DP3475."key_int", "UIP_Target"."key_int") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572"), "data_string" = (SELECT COALESCE(DP3475."data_string", "UIP_Target"."data_string") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572"), "data_int" = (SELECT COALESCE(DP3475."data_int", "UIP_Target"."data_int") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572"), "data_decimal" = (SELECT COALESCE(DP3475."data_decimal", "UIP_Target"."data_decimal") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572") WHERE EXISTS (SELECT 'X' FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572")




Re:Using a COALESCE function throws a java.lang.ArrayIndexOutOfBoundsException
Govind
2013-08-08 11:40:16
Please take this up as a high priority.
Re:Re:Using a COALESCE function throws a java.lang.ArrayIndexOutOfBoundsException
HXTT Support
2013-08-09 02:58:16
2013-08-09 support update batch column list syntax. For instance, UPDATE "UIP_Target" SET ("key_string","key_int","data_string","data_int","data_decimal" ) = (SELECT COALESCE(DP3475."key_string", "UIP_Target"."key_string"),COALESCE(DP3475."key_int", "UIP_Target"."key_int"),COALESCE(DP3475."data_string", "UIP_Target"."data_string"),COALESCE(DP3475."data_int", "UIP_Target"."data_int"),COALESCE(DP3475."data_decimal", "UIP_Target"."data_decimal") FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572") WHERE EXISTS (SELECT 'X' FROM DP3475 WHERE "UIP_Target"."key_string"=DP3475."KEY208" AND "UIP_Target"."key_int"=DP3475."KEY572")
2013-08-02 fixed a component index match ArrayIndexOutOfBoundsException bug for JOIN sql since 2013-06-29.

Search Key   Search by Last 50 Questions




Google
 

Email: webmaster@hxtt.com
Copyright © 2003-2019 Heng Xing Tian Tai Lab of Xi'an City. | All Rights Reserved. | Privacy | Legal | Sitemap