11 Stimmen

Kann ich die vollständige Abfrage erhalten, die ein PreparedStatement im Begriff ist, auszuführen?

Ich arbeite mit PreparedStatement mit dem MySQL-Server.

Beispiel:

String myQuery = "select id from user where name = ?";
PreparedStatement stmt  = sqlConnection.prepareStatement(myQuery);
stmt.setString(1, "test");
stmt.executeQUery();
ResultSet rs = stmt.getResultSet();

Wie kann ich die vollständige SQL-Abfrage die demnächst auf der MySQL Server ?

1voto

rdj7 Punkte 1755

Ein etwas anderer Ansatz als alle Antworten hier,

Wenn Sie mit den Debugging-Optionen in Eclipse vertraut sind. Sie können Folgendes versuchen:

  1. Setzen Sie einen Haltepunkt bei stmt.executeQUery();

  2. Klicken Sie mit der rechten Maustaste auf Ihre Anwendung und sagen Sie Debug As Wählen Sie Java Application (oder was auch immer in Ihrem Fall anwendbar ist, z.B. SpringBoot App etc.

  3. Führen Sie den Schritt aus, der Sie zum in der Frage genannten Code führt.

  4. Wenn Sie prüfen Variables tab en Debug Perspective von Eclipse, finden Sie Variablen wie myQuery , stmt (entsprechend Ihrem Code)

  5. Was auch immer Sie als Wert von stmt wäre die vollständige SQL-Abfrage, die Sie benötigen.

Wenn Sie diese Variable nicht ständig im Auge behalten wollen, können Sie auch versuchen Java Logging und drucken Sie Ihre vollständige SQL-Abfrage in den Protokollen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X