Options SET
Dans le tableau suivant, les options SET sont répertoriées par ordre alphabétique, accompagnées des options de base de données et de serveur prises en charge par Microsoft SQL Server 2005.
Option SET | Option de base de données | Option de serveur | Paramètre par défaut |
---|---|---|---|
Aucun |
Aucune |
Non applicable |
|
ANSI_NULL_DEFAULT |
user options affecte une valeur par défaut |
OFF |
|
ANSI_NULLS |
user options affecte une valeur par défaut |
OFF |
|
ANSI_PADDING |
user options affecte une valeur par défaut |
ON |
|
ANSI_WARNINGS |
user options affecte une valeur par défaut |
OFF |
|
ARITHABORT |
user options affecte une valeur par défaut |
OFF |
|
Aucune |
user options affecte une valeur par défaut |
OFF |
|
CONCAT_NULL_YIELDS_NULL |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
CURSOR_CLOSE ON_COMMIT |
user options affecte une valeur par défaut |
OFF |
|
Aucune |
Aucune |
7 |
|
Aucune |
Aucune |
mdy |
|
Aucune |
Aucune |
NORMAL |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
|
OFF |
|
Aucune |
user options affecte une valeur par défaut |
OFF |
|
Aucune |
Aucune |
us_english |
|
Aucune |
Aucune |
Illimité |
|
Aucune |
user options affecte une valeur par défaut |
OFF |
|
Aucune |
Aucune |
OFF |
|
NUMERIC_ROUNDABORT |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
query governor cost limit |
OFF |
|
identicateur entre guillemets |
user options affecte une valeur par défaut |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
OFF |
|
Aucune |
Aucune |
N/A |
|
Aucune |
Aucune |
OFF |
Options SET au moment de l'analyse et de l'exécution
Selon qu'il s'agira d'une option d'analyse ou d'exécution, une option SET ne prendra pas effet au même moment. Les options d'analyse prennent effet durant l'analyse, à mesure que les options sont rencontrées dans le texte, sans qu'il soit tenu compte des instructions de flux. Les options d'exécution prennent effet durant l'exécution du code dans lequel elles sont spécifiées. Si l'exécution échoue avant que l'instruction SET ait été traitée, l'option n'est pas définie. Si elle échoue après, l'option est définie.
Les options QUOTED_IDENTIFIER, PARSEONLY, OFFSETS et FIPS_FLAGGER sont des options d'analyse. Toutes les autres instructions SET sont des options d'exécution.
Les instructions SET QUOTED_IDENTIFIER et SET ANSI_NULLS qui sont exécutées dans un lot ou dans une procédure stockée n'affectent pas ce lot ou cette procédure stockée. Au lieu de cela, les paramètres utilisés pour les instructions du lot ou de la procédure stockée sont ceux qui étaient en vigueur lors de la création de ce lot ou de cette procédure stockée.
Durée des options SET
Cette section décrit la durée des options SET.
- Les options SET définies par un utilisateur dans un script s'appliquent jusqu'à ce qu'une réinitialisation se produise ou jusqu'à ce que l'utilisateur mette fin à sa session sur le serveur.
- Les options SET définies dans une procédure stockée ou dans un déclencheur s'appliquent jusqu'à ce que se produise une réinitialisation de cette procédure stockée ou ce déclencheur, ou jusqu'à ce que le contrôle soit rendu au code qui a appelé cette procédure stockée ou ce déclencheur.
- Une connexion MARS conserve une liste des valeurs par défaut des options SET. Lorsqu'un lot est exécuté sur cette connexion, les valeurs par défaut des options SET sont copiées dans l'environnement de la demande. Une fois le lot terminé, l'environnement est recopié dans les valeurs par défaut de la session. De cette manière, plusieurs lots exécutés en même temps sur la même connexion restent dans un environnement isolé d'options SET.
Remarque : Sur les connexions MARS, si plusieurs lots sont exécutés en même temps et modifient l'environnement d'exécution par lot, l'environnement par défaut résultant pour la connexion dépend du dernier lot exécuté. - Sauf si elles sont réinitialisées explicitement, les valeurs des options SET d'un code de niveau supérieur s'appliquent dans une procédure stockée ou dans un déclencheur.
- Les options SET définies par un utilisateur dans un lot SQL dynamique s'appliquent uniquement pour la durée de ce lot.
- Sauf si elles sont réinitialisées explicitement ou implicitement, les options SET définies pour une connexion s'appliquent après connexion à une autre base de données.
Remarque : En outre, lorsqu'un utilisateur se connecte à une base de données, certaines options peuvent prendre automatiquement la valeur ON, en fonction des valeurs spécifiées lors de la précédente utilisation de l'option de serveur user options ou de celles qui sont appliquées à toutes les connexions ODBC et OLE DB.
Raccourci pour les options SET
Transact-SQL propose l'instruction SET ANSI_DEFAULTS comme raccourci pour la définition des options de la norme SQL-92 suivantes :
- SET ANSI_NULLS
- SET CURSOR_CLOSE_ON_COMMIT
- SET ANSI_NULL_DFLT_ON
- SET IMPLICIT_TRANSACTIONS
- SET ANSI_PADDING
- SET QUOTED_IDENTIFIER
- SET ANSI_WARNINGS
Le raccourci réinitialise les valeurs de ces options. Toute option définie après l'utilisation du raccourci prévaut sur la valeur correspondante définie par le raccourci.
Remarque : |
---|
SET ANSI_DEFAULTS ne définit pas toutes les options requises pour la conformité avec la norme SQL-92. |
Voir aussi
Concepts
Utilisation d'options dans SQL Server