

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Hint di query SPARQL `queryTimeout`
<a name="sparql-query-hints-queryTimeout"></a>

l'hint di query `queryTimeout` specifica un timeout più breve rispetto al valore `neptune_query_timeout` impostato nel gruppo di parametri di database.

Se la query termina come risultato di questo hint, viene generata un'eccezione `TimeLimitExceededException`, con un messaggio `Operation terminated (deadline exceeded)`. L'eventuale ripetizione di una query scaduta dipende dalla natura dell'errore e dal carico di lavoro. Per le linee guida, consulta [Gestione di eccezioni e nuovi tentativi](transactions-exceptions.md).

## Sintassi dell'hint SPARQL `queryTimeout`
<a name="sparql-query-hints-queryTimeout-syntax"></a>

```
PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>
SELECT ... WHERE {
    hint:Query hint:queryTimeout 10 .
    # OR
    hint:Query hint:queryTimeout "10" .
    # OR
    hint:Query hint:queryTimeout "10"^^xsd:integer .
 ...
}
```

Il valore di timeout viene espresso in millisecondi.

Il valore di timeout deve essere inferiore al valore `neptune_query_timeout` impostato nel gruppo di parametri di database. In caso contrario, viene generata un'eccezione `MalformedQueryException` con un messaggio `Malformed query: Query hint 'queryTimeout' must be less than neptune_query_timeout DB Parameter Group`.

l'hint di query `queryTimeout` dovrebbe essere specificato nella clausola `WHERE` della query principale oppure nella clausola `WHERE` di una delle sottoquery, come illustrato nell'esempio seguente.

Deve essere impostato una sola volta in tutte le sezioni queries/subqueries e gli aggiornamenti SPARQL (come INSERT e DELETE). In caso contrario, viene generata un'eccezione `MalformedQueryException` con un messaggio `Malformed query: Query hint 'queryTimeout' must be set only once`.

**Ambiti disponibili**

L'hint `queryTimeout` può essere applicato sia alle query sia agli aggiornamenti SPARQL.
+ In una query SPARQL, può comparire nella clausola WHERE della query principale o di una sottoquery.
+ In un aggiornamento SPARQL, può essere impostato nella clausola INSERT, DELETE o WHERE. Se sono presenti più clausole di aggiornamento, può essere impostato solo in una di esse.

Per ulteriori informazioni sugli ambiti dei suggerimenti di query, consulta [Ambito degli hint di query SPARQL in Neptune](sparql-query-hints.md#sparql-query-hints-scope).

## Esempio dell'hint SPARQL `queryTimeout`
<a name="sparql-query-hints-queryTimeout-example"></a>

Di seguito è illustrato un esempio di utilizzo di `hint:queryTimeout` nella clausola `WHERE` principale di una query `UPDATE`:

```
PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>
INSERT {
    ?s ?p ?o
} WHERE {
    hint:Query hint:queryTimeout 100 .
    ?s ?p ?o .
}
```

Di seguito, `hint:queryTimeout` si trova nella clausola `WHERE` di una sottoquery:

```
PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#>
SELECT * {
   ?s ?p ?o .
   {
      SELECT ?s WHERE {
         hint:Query hint:queryTimeout 100 .
         ?s ?p1 ?o1 .
      }
   }
}
```