Nome specifico |
Specificare un nome specifico per la clausola SPECIFIC della
procedura. |
Accesso |
Selezionare un'opzione per il livello di accesso ai dati per le istruzioni SQL
incluse nella procedura. È possibile selezionare NO_SQL, CONTAINS_SQL,
READS_SQL_DATA o MODIFIES_SQL_DATA. |
Deterministico |
Se questa opzione è selezionata, specifica che la procedura di origine restituisce sempre gli stessi risultati per determinati valori di argomenti (DETERMINISTIC). Se invece non viene selezionata, specifica che la procedura di origine dipende da alcuni valori definiti che influenzano i risultati (NOT DETERMINISTIC). Una procedura di origine DETERMINISTIC deve restituire sempre lo stesso risultato da richiami successivi con input identici. Questa clausola non influenza l'elaborazione della procedura.
Se questa opzione non viene specificata esplicitamente, verrà utilizzato il valore per la procedura di origine. Se l'opzione non è disponibile sull'origine dati, il valore predefinito sarà NOT DETERMINISTIC. Se questa opzione è specificata esplicitamente ma non corrisponde al valore per la procedura di origine, viene restituito un errore. |
Azione esterna |
Specifica se la procedura di origine esegue un'azione che modifica lo stato di un oggetto che non è gestito dal database manager
(EXTERNAL ACTION) oppure non esegue alcuna azione (NO EXTERNAL ACTION). Se viene specificata la clausola NO EXTERNAL ACTION, il database federato utilizzerà l'ottimizzazione che assume che la procedura di origine non ha un impatto esterno. Se questa opzione non viene specificata esplicitamente, verrà utilizzato il valore per la procedura di origine. Se l'opzione non è disponibile sull'origine dati, il valore predefinito sarà EXTERNAL ACTION.
Se questa opzione è specificata esplicitamente ma non corrisponde al valore per la procedura di origine, viene restituito un errore. Specificando EXTERNAL ACTION,
le ottimizzazioni di sistema assumono che le procedure non hanno alcun impatto esterno. |