sql >> Database >  >> RDS >> Mysql

PreparedStatement zal nooit een time-out krijgen, zelfs niet als dit expliciet is ingesteld

Bel Connection.setNetworkTimeout() in een poging-eindelijk .

private final static Executor immediateExecutor = Runnable::run;

try ( Connection connection = pool.getConnection() ) {
   int timeout = connection.getNetworkTimeout();
   connection.setNetworkTimeout(immediateExecutor, TimeUnit.SECONDS.toMillis(5));
   ...
   try (PreparedStatement...) {
      ...
   }
   finally {
      connection.setNetworkTimeout(timeout);
   }
}
finally {
   ...
}

U heeft last van onbevestigd TCP-verkeer, waardoor een verbinding kan worden verbroken als er geen netwerktime-out is ingesteld.



  1. Hoe kan ik een vacature of evenement aanmaken in mysql

  2. Waarom werkt dit voorbeeld van selecteren voor update?

  3. Yii2 QueryBuilder-update met Join

  4. Kan iemand MySQL-externe sleutels uitleggen?