Mysql
 sql >> Datenbank >  >> RDS >> Mysql

JDBC PreparedStatement - Ist es möglich, dasselbe Argument zu verwenden?

Mit einer lokalen Variablen können Sie den Code weniger hässlich und fehleranfällig machen. Aber das Manko von JDBC dass es keine benannten Parameter unterstützt, gilt immer noch. Es gibt wieder mehrere Zeilen für denselben Parameter.

    statement = connection.prepareStatement(sql);

    long time = i_RequestStats.GetResponseTime();
    long bytes = i_RequestStats.GetBytes();

    statement.setString(1, i_ServletModel.GetPath());
    statement.setInt(2, i_ServletModel.GetApplicationId());
    statement.setLong(3,time);
    statement.setLong(4, bytes);
    statement.setLong(5, time);
    statement.setLong(6, bytes);