Anscheinend müssen Sie useAffectedRows
festlegen manuell in den Treibereigenschaften.
Ich habe die Lösung nach einigem Googeln gefunden. Sie können diesen MySql-Bug für diesen INSERT ON DUPLICATE KEY UPDATE beziehen und 0 zurückgeben, wenn keine Änderung erfolgt JDBC ExecuteUpdate
In der Diskussion wird auch angegeben, dass sie es in 5.1.7 veröffentlicht haben
BEARBEITEN Für Ihre zweite Frage:
AffectedRows verwenden :
Standard:falsch
Ab Version:5.1.7
Referenz useAffectedRows in JDBC Connector-j