sql >> Databasteknik >  >> RDS >> Oracle

Java 1.6 och Oracle JDBC 14 setQueryTimeout fungerar inte

Se hur frågetimeout fungerar i Oracle JDBC-drivrutinen här:https://forums. oracle.com/forums/thread.jspa?threadID=550257

Lång historia kort:

  1. Det tar en hel tur och retur till databasen för att avbryta SQL-körningen när timeouten går ut. Databasen kommer att hantera avbrytningsförfrågan när det känns så.
  2. Förartidsgränsmekanismen är inte en högprecisionsmekanism. Eftersom att faktiskt avbryta exekveringen kräver att man pratar med databasen över nätverket, är det ingen idé att göra drivrutinen superprecis. Även om drivrutinen var exakt, skulle nätverksfördröjningarna och tiden som krävs för databasen att svara på avbrytningsförfrågan förneka förarens precision. Så timeout är den MINIMUM tid som drivrutinen kommer att ge SQL för att exekvera innan en avbrytning skickas till servern.


  1. Konvertera ett objekt till en sträng i PHP

  2. Escape-kommandoparametrar skickas till xp_cmdshell till dtexec

  3. MySQL Välj id från till och exkludera start- och slut-id

  4. använder enctype=multipart/form-data med arabiska språk