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")
|
Please take this up as a high priority.
|
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.
|