

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# sp\$1babelfish\$1volatility
<a name="sp_babelfish_volatility"></a>

La volatilité des fonctions PostgreSQL aide l'optimiseur à mieux exécuter les requêtes, ce qui, lorsqu'il est utilisé dans des parties de certaines clauses, a un impact significatif sur les performances des requêtes. 

## Syntaxe
<a name="sp_babelfish_volatility-syntax"></a>

 

```
sp_babelfish_volatility ‘function_name’, ‘volatility’
```

## Arguments
<a name="sp_babelfish_volatility-arguments"></a>

 *function\$1name (facultatif)*   
Vous pouvez spécifier la valeur de cet argument avec un nom en deux parties comme `schema_name.function_name` ou uniquement `function_name`. Si vous spécifiez uniquement `function_name`, le nom du schéma est le schéma par défaut pour l'utilisateur actuel.

 *volatility (facultatif)*   
Les valeurs PostgreSQL valides de volatilité sont `stable`, `volatile` ou `immutable`. Pour plus d’informations, consultez [https://www.postgresql.org/docs/current/xfunc-volatility.html](https://www.postgresql.org/docs/current/xfunc-volatility.html).

**Note**  
Quand `sp_babelfish_volatility` est appelée avec `function_name` qui possède plusieurs définitions, elle génère une erreur.

## Jeu de résultats
<a name="sp_babelfish_volatility-return-type"></a>

Si les paramètres ne sont pas mentionnés, le jeu de résultats s'affiche sous les colonnes suivantes :`schemaname`, `functionname`, `volatility`.

## Notes d’utilisation
<a name="sp_babelfish_volatility-usage-notes"></a>

La volatilité des fonctions PostgreSQL aide l'optimiseur à mieux exécuter les requêtes, ce qui, lorsqu'il est utilisé dans des parties de certaines clauses, a un impact significatif sur les performances des requêtes. 

## Exemples
<a name="sp_babelfish_volatility-examples"></a>

Les exemples suivants montrent comment créer des fonctions simples et expliquent ensuite comment utiliser `sp_babelfish_volatility` sur ces fonctions à l'aide de différentes méthodes.

```
1> create function f1() returns int as begin return 0 end
2> go
```

```
1> create schema test_schema
2> go
```

```
1> create function test_schema.f1() returns int as begin return 0 end
2> go
```

L'exemple suivant montre la volatilité des fonctions :

```
1> exec sp_babelfish_volatility
2> go
            
schemaname  functionname volatility
----------- ------------ ----------
dbo         f1           volatile
test_schema f1           volatile
```

L'exemple suivant montre comment modifier la volatilité des fonctions :

```
1> exec sp_babelfish_volatility 'f1','stable'
2> go
1> exec sp_babelfish_volatility 'test_schema.f1','immutable'
2> go
```

Lorsque vous spécifiez uniquement function\$1name, cela affiche le nom du schéma, le nom de la fonction et la volatilité de cette fonction. L'exemple suivant affiche la volatilité des fonctions après la modification des valeurs :

```
1> exec sp_babelfish_volatility 'test_schema.f1'
2> go
            
schemaname  functionname volatility
----------- ------------ ----------
test_schema f1           immutable
```

```
1> exec sp_babelfish_volatility 'f1'
2> go
            
schemaname  functionname volatility
----------- ------------ ----------
dbo         f1           stable
```

Lorsque vous ne spécifiez aucun argument, cela affiche la liste des fonctions (nom du schéma, nom de la fonction, volatilité des fonctions) présentes dans la base de données actuelle :

```
1> exec sp_babelfish_volatility 
2> go
            
schemaname  functionname volatility
----------- ------------ ----------
dbo         f1           stable
test_schema f1           immutable
```