Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Escapezeichen für ein einfaches Anführungszeichen bei Verwendung von JdbcTemplate

Verwenden Sie PreparedStatement . Auf diese Weise benennen Sie einen Platzhalter und der JDBC-Treiber führt dies korrekt aus, indem er die Anweisung plus die Parameter als Argumente an die Datenbank sendet.

    String updateStatement =
    "update " + dbName + ".COFFEES " +
    "set TOTAL = TOTAL + ? " +
    "where COF_NAME = ?";

    PreparedStatement updateTotal = con.prepareStatement(updateStatement);
    updateTotal.setInt(1, e.getValue().intValue());
    updateTotal.setString(2, e.getKey());

Die Fragezeichen oben stellen die Platzhalter dar.

Da diese Werte als Parameter übergeben werden, haben Sie keine Probleme mit dem Zitieren und es schützt Sie vor SQL Injektion auch.