Problem with UPDATE query in DB_OUTPUT_TABLE

Hi.

I’ve got an issue since 2.4.5 (maybe 2.4.4) release with UPDATE queries.

It worked with 2.4.3 release.

I noticed that it fails just with update queries in which all of the fields compose the index of the table.

For example (a table with 2 fields) :

UPDATE TABLE SET FIELD1 = $FIELD1, FIELD2 = $FIELD2 WHERE FIELD1 = $FIELD1 AND FIELD2 = $FIELD2 —> FAIL

UPDATE TABLE SET FIELD1 = $FIELD1, FIELD2 = $FIELD2 WHERE FIELD1 = $FIELD1 —> OK

The error happens in the “prepareUpdateStatement()” method of SQLCloverStatement Class :

for (int i = 0; i < cloverFields.length; i++) {
						if (cloverFields[i] != null) {
							fMap.put(dbFields[i], cloverFields[i]);
						}
					}

cloverFields contains 4 items while dbFields contains 2 items.

Hi,
the bug was found and fixed. The fix is available in SVN and will be in the next release.

Hi !

That’s great … 2.4.6 release solves the issue.

Thanks a lot.