Posto un piccolo codice di esempio che ho realizzato.
Non capisco bene come sfruttare il comandocodice:<%@ Language=VBScript %> <% Option Explicit On Error Resume Next dim connection, command set connection = Server.CreateObject("ADODB.connection") connection.CommandTimeout = 5 connection.ConnectionString = "DSN=francesco;" connection.Open set command = Server.CreateObject("ADODB.command") command.ActiveConnection = connection command.CommandText = "SELECT * FROM tabella1 " command.CommandTimeout = 5 command.Execute set command = Nothing connection.Close set connection = Nothing %>
ed il comandocodice:command.CommandTimeout = 5
Ho provato a lockare la tabella (eseguendo una update senza commit).codice:connection.CommandTimeout = 5
Ho eseguito la pagina ASP che esegue una QUERY sulla tabella stessa; la pagina comincia a caricare, e dopo il timeout impostato da IIS o con il comando Session.Timeout (per l'esecuzione degli script ASP e non per i DB) va in errore (tra l'altro non intercettabile con On Error Resume Next).
E' un errore di concetto (nel senso che connection.CommandTimeout = 5 non è utilizzabile per timeout dovuti a tabelle lockate) oppure c'è un errore nell'uso del comando?
Grazie a tutti...
PS: Ho bisogno di questo comando perche vorrei che le query durassero max 5 secondi. Nel caso durino di più vorrei generare un errore (gestibile) e rispondere all'utente di riprovare più tardi per via di sovraffollamento della rete.
Grazie a tutti.

Rispondi quotando