Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

SET OPTIONS .... où sont-ils stockés

Ceux qui s'appliquent aux procédures, comme ANSI_NULLS et QUOTED_IDENTIFIER sont dans sys.sql_module s , d'où ils sont récupérés par OBJECTPROPERTY .

Ceux qui s'appliquent aux bases de données et sont définis par base de données sont disponibles dans sys.databases .

Ceux qui s'appliquent aux sessions sont disponibles dans sys.dm_exec_sessions .

En fin de compte, ce qui est réellement appliqué dépend d'un paramètre à l'autre, et les règles d'écrasement et de valeurs par défaut sont pour le moins complexes. Certains pilotes clients activent/désactivent automatiquement les options. Pas les mêmes options et pas les mêmes valeurs par défaut, cela dépend d'un client à l'autre (ODBC, OleDB, SNAC, SqlClient, etc.). La règle générique est :

  1. Une option de base de données remplace une option d'instance.
  2. Une option SET remplace une option de base de données.
  3. Un indice remplace une option SET.