Ich habe den folgenden Java-Code:die SQL-Spalten auf UPDATE-Anweisung geändert
PreparedStatement statement = conn.prepareStatement(updateString);
statement.execute();
Ich weiß, dass danach ausgeführt wird, tut statement.getUpdateCount();
die Anzahl der aktualisierten Zeilen zurückgibt. Aber gibt es eine Möglichkeit zu wissen, welche Spalten aktualisiert wurden?
Das Problem ist, dass der Code, wie er ist, immer den gesamten Satz von Spaltenwerten übergibt, selbst wenn sich einige dieser Werte nicht ändern.
Ich möchte in der Lage sein zu sagen, ob eine bestimmte Spalte, zum Beispiel "NAME", geändert hat oder nicht, als Ergebnis der zugrunde liegenden vorbereiteten UPDATE-Anweisung.
EDIT: Ich verstehe, dass es möglich ist, eine SELECT für diese Spalte zu tun, den aktuellen Wert zu erhalten, und vergleichen Sie mit eingehenden neuen Wert zu erkennen, ob es wird sich ändern. Es impliziert jedoch eine weitere Reise in die Datenbank. Diese Frage soll feststellen, ob es möglich ist oder nicht, durch irgendeinen JDBC/SQL-Kommunikationsmechanismus unmittelbar nach dem Aufrufen dieser Anweisung.
versuchen, eine Abfrage ex sxcute: Wählen Sie nameColimn aus der Tabelle nach dem updatequery – Abdelhak
ich nicht den vorherigen Wert zu vergleichen haben. Ich versuche zu sehen, ob es eine schnelle Lösung gibt, die nur SQL verwendet, bevor ich Ripple-Effekte über existierende Java-Schnittstellen erzeuge und so weiter. –
Wenn Sie nicht haben, ist es das gleiche nach dem Update überprüfen Sie das Ergebnis mit Select Query – Abdelhak