Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Base de données SQL dans Microsoft Fabric
Pour une base de données spécifiée dans SQL Server, la DATABASEPROPERTYEX fonction retourne le paramètre actuel de l’option ou de la propriété de base de données spécifiée.
Conventions de la syntaxe Transact-SQL
Syntaxe
DATABASEPROPERTYEX ( database , property )
Les arguments
base de données
Expression spécifiant le nom de la base de données pour laquelle DATABASEPROPERTYEX retourne les informations de propriété nommées. Le type de données de database est nvarchar(128) .
Pour SQL Database, DATABASEPROPERTYEX a besoin du nom de la base de données active. Elle retourne NULL toutes les propriétés si elle a un nom de base de données différent.
propriété
Expression spécifiant le nom de la propriété de base de données à retourner. property possède le type de données varchar (128) et prend en charge l’une des valeurs contenues dans ce tableau :
Notes
Si la base de données n’a pas encore démarré, les appels à DATABASEPROPERTYEX retourner NULL si DATABASEPROPERTYEX ces valeurs sont récupérées par accès direct à la base de données, au lieu d’être récupérés à partir de métadonnées. Une base de données définie AUTO_CLOSEONsur , ou hors connexion, est définie comme « non démarrée ».
| Propriété | Descriptif | Valeur retournée |
|---|---|---|
CollationType de données : nvarchar(128) |
Nom du classement par défaut de la base de données | Nom du classement. Si NULL, la base de données n’est pas démarrée. |
ComparisonStyleType de données : int |
Style de comparaison Windows du classement. Utilisez les valeurs de style suivantes pour générer une bitmap pour la valeur terminée ComparisonStyle :- 1: Ignorer la casse- 2: Ignorer l’accentuation- 65536: Ignorer le kana- 131072: Ignorer la largeurPar exemple, la valeur par défaut 196609 est le résultat de la combinaison de la casse ignorée, de l’ignorer, de l’ignorer et d’ignorer les options de largeur . |
Retourne le style de comparaison. Retourne 0 tous les classements binaires. |
EditionType de données : nvarchar(64) |
Édition de la base de données ou couche de service. | - General Purpose- Business Critical- Basic- Standard- Premium- System (pour master la base de données)- FabricSQLDB: Base de données SQL dans Microsoft Fabric- NULL: La base de données n’est pas démarrée.S’applique à : Azure SQL Database, SQL database dans Microsoft Fabric, Azure Synapse Analytics. |
IsAnsiNullDefaultType de données : int |
La base de données suit les règles ISO pour autoriser les NULL valeurs. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAnsiNullsEnabledType de données : int |
Toutes les comparaisons à une NULL valeur inconnue. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAnsiPaddingEnabledType de données : int |
Les chaînes sont complétées à la même longueur avant leur comparaison ou insertion. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAnsiWarningsEnabledType de données : int |
SQL Server émet des messages d’erreur ou d’avertissement quand des conditions d’erreur standard se présentent. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsArithmeticAbortEnabledType de données : int |
Les requêtes s’arrêtent quand une erreur liée à un dépassement de capacité ou une division par zéro se produit pendant leur exécution. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAutoCloseType de données : int |
La base de données est fermée correctement et ses ressources sont libérées après la fin de session du dernier utilisateur. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAutoCreateStatisticsType de données : int |
L'optimiseur de requête crée des statistiques de colonnes uniques, selon les besoins, pour améliorer les performances des requêtes. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAutoCreateStatisticsIncrementalType de données : int |
Les statistiques de colonnes uniques créées automatiquement sont incrémentielles quand cela est possible. |
-
1:Vrai- 0:Faux- NULL: entrée non valideS’applique à : SQL Server 2014 (12.x) et ultérieur. |
IsAutoShrinkType de données : int |
Les fichiers de base de données peuvent faire l'objet d'une réduction périodique automatique. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsAutoUpdateStatisticsType de données : int |
Quand une requête utilise des statistiques existantes potentiellement périmées, l’optimiseur de requête met à jour ces statistiques. |
-
1:Vrai- 0:Faux- NULL: Entrée non valide |
IsCloneType de données : int |
La base de données est une copie de schéma et de statistiques uniquement d’une base de données utilisateur créée avec DBCC CLONEDATABASE. |
-
1:Vrai- 0:Faux- NULL: entrée non valideS’applique à : SQL Server 2014 (12.x) SP2 et versions ultérieures. |
IsCloseCursorsOnCommitEnabledType de données : int |
Lorsqu’une transaction est validée, tous les curseurs ouverts sont fermés. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsDatabaseSuspendedForSnapshotBackupType de données : int |
La base de données est suspendue. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsFulltextEnabledType de données : int |
L'indexation sémantique et de texte intégral est activée pour la base de données. |
-
1:Vrai- 0:Faux- NULL: Entrée non valideS’applique à : SQL Server 2008 (10.0.x) et ultérieur. Remarque : La valeur de cette propriété est désormais sans effet. Les bases de données utilisateur sont toujours activées pour la recherche en texte intégral. Cette propriété sera supprimée dans une future version de SQL Server. N’utilisez pas cette propriété dans le nouveau travail de développement et modifiez les applications qui utilisent actuellement cette propriété dès que possible. |
IsInStandByType de données : int |
La base de données est en ligne en lecture seule, avec la restauration du journal autorisée. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsLocalCursorsDefaultType de données : int |
Les déclarations de curseur sont par défaut LOCAL. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsMemoryOptimizedElevateToSnapshotEnabledType de données : int |
Les tables optimisées en mémoire sont accessibles à l’aide SNAPSHOT de l’isolation, lorsque le paramètre TRANSACTION ISOLATION LEVEL de session est défini READ COMMITTEDsur , READ UNCOMMITTEDou sur un niveau d’isolation inférieur. |
-
1:Vrai- 0:FauxS’applique à : SQL Server 2014 (12.x) et ultérieur. |
IsMergePublishedType de données : int |
SQL Server prend en charge la publication de tables de base de données pour la réplication de fusion, si la réplication est installée. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsNullConcatType de données : int |
L’opérande de concaténation Null génère NULL. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsNumericRoundAbortEnabledType de données : int |
Des erreurs sont générées quand une perte de précision se produit dans des expressions. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsOptimizedLockingOnType de données : int |
Le verrouillage optimisé est activé pour la base de données. |
-
1:Vrai- 0:Faux- NULL:Non disponibleS’applique à : SQL Server 2025 (17.x) et versions ultérieures, Azure SQL Database, Azure SQL Managed InstanceAUTD, et la base de données SQL dans Microsoft Fabric. |
IsParameterizationForcedType de données : int |
PARAMETERIZATION l’option de base de données SET est FORCED. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsQuotedIdentifiersEnabledType de données : int |
Les guillemets doubles sont autorisés dans les identificateurs. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsPublishedType de données : int |
Si la réplication est installée, SQL Server prend en charge la publication de tables de base de données pour la réplication transactionnelle ou de capture instantanée. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsRecursiveTriggersEnabledType de données : int |
Le fonctionnement récursif des déclencheurs est activé. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsSubscribedType de données : int |
La base de données est abonnée à une publication. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsSyncWithBackupType de données : int |
La base de données est une base de données publiée ou une base de données de distribution et prend en charge une restauration qui n’interrompt pas la réplication transactionnelle. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsTornPageDetectionEnabledType de données : int |
Le Moteur de base de données SQL Server détecte les opérations d'E/S interrompues à la suite d'une coupure de courant ou de toute autre panne du système. |
-
1:Vrai- 0:Faux- NULL: entrée non valide |
IsVerifiedCloneType de données : int |
La base de données est une copie de schéma et de statistiques uniquement d’une base de données utilisateur, créée à l’aide de WITH VERIFY_CLONEDBl’option DBCC CLONEDATABASE . |
-
1:Vrai- 0:Faux- NULL: entrée non valideS’applique à : SQL Server 2016 (13.x) SP2 et versions ultérieures. |
IsXTPSupportedType de données : int |
Indique si la base de données prend en charge OLTP en mémoire. Par exemple : création et utilisation de tables à mémoire optimisée et de modules compilés en mode natif. Spécifique à SQL Server : IsXTPSupported est indépendant de l’existence d’un MEMORY_OPTIMIZED_DATA groupe de fichiers, ce qui est requis pour la création d'In-Memory objets OLTP. |
-
1:Vrai- 0:Faux- NULL: entrée non valide, erreur ou non applicableS’applique à : SQL Server 2016 (13.x) et versions ultérieures, et Azure SQL Database. |
LastGoodCheckDbTimeType de données : datetime |
Date et heure du dernier succès DBCC CHECKDB exécuté sur la base de données spécifiée. Si DBCC CHECKDB aucune base de données n’a été exécutée, 1900-01-01 00:00:00.000 elle est retournée. Pour les bases de données qui font partie d’un groupe de disponibilité, LastGoodCheckDbTime retourne la date et l’heure de la dernière exécution réussie DBCC CHECKDB sur le réplica principal, quel que soit le réplica à partir duquel vous exécutez la commande. |
NULL: entrée non valideS’applique à : SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU9, SQL Server 2019 (15.x) et versions ultérieures, Azure SQL Database, et SQL database dans Microsoft Fabric. |
LCIDType de données : int |
Identificateur de paramètres régionaux (LCID) Windows de classement. | Valeur LCID (au format décimal). |
MaxSizeInBytesType de données : Bigint |
Taille maximale de la base de données, en octets. |
-
Azure SQL Database et Azure Synapse Analytics : la valeur est basée sur SLO, sauf si un stockage supplémentaire a été acheté. - vCore : la valeur est en incréments de 1 Go jusqu’à la taille maximale. - NULL: La base de données n’est pas démarréeS’applique à : Azure SQL Database, SQL database dans Microsoft Fabric, et Azure Synapse Analytics. |
RecoveryType de données : nvarchar(128) |
Modèle de récupération de base de données. |
-
FULL: modèle de récupération complète- BULK_LOGGED: Modèle journalisé en bloc- SIMPLE: modèle de récupération simple |
ServiceObjectiveType de données : nvarchar(32) |
Décrit le niveau de performance de la base de données dans SQL Database, SQL Database dans Microsoft Fabric ou Azure Synapse Analytics. | Une des valeurs suivantes : - NULL: base de données non démarrée- Shared (pour les éditions Web/Business)- Basic- S0- S1- S2- S3- P1- P2- P3- ElasticPool- System (pour master la base de données)- FabricSQLDB: Base de données SQL dans Microsoft Fabric |
ServiceObjectiveIdType de données : uniqueidentifier |
ID de l’objectif de service dans la SQL Database. | ID de l’objectif de service. |
SQLSortOrderType de données : tinyint |
ID d'ordre de tri SQL Server pris en charge dans les versions antérieures de SQL Server. |
-
0: La base de données utilise le classement Windows- >0: ID de l’ordre de tri SQL Server- NULL: entrée non valide ou base de données n’a pas démarré |
StatusType de données : nvarchar(128) |
État de la base de données. |
ONLINE: la base de données est disponible pour la requête.Note: La fonction peut retourner un état pendant que la base de ONLINE données s’ouvre et n’a pas encore récupéré. Pour identifier si une ONLINE base de données peut accepter des connexions, interrogez la Collation propriété de DATABASEPROPERTYEX. La ONLINE base de données peut accepter les connexions lorsque le classement de la base de données retourne une valeur non Null. Pour les bases de données Always On, interrogez les colonnes ou database_state les database_state_desc colonnes de sys.dm_hadr_database_replica_states.- OFFLINE: La base de données a été explicitement mise hors connexion.- RESTORING: la restauration de base de données a démarré.- RECOVERING: la récupération de base de données a démarré et la base de données n’est pas encore prête pour les requêtes.- SUSPECT: La base de données n’a pas récupéré.- EMERGENCY: la base de données est dans un état d’urgence en lecture seule. L’accès est limité aux membres sysadmin |
UpdateabilityType de données : nvarchar(128) |
Indique si les données peuvent être modifiées. |
READ_ONLY: la base de données prend en charge les lectures de données, mais pas les modifications de données.- READ_WRITE: la base de données prend en charge les lectures et modifications de données. |
UserAccessType de données : nvarchar(128) |
Définit les utilisateurs autorisés à accéder à la base de données. |
SINGLE_USER: un seul utilisateur db_owner, dbcreator ou sysadmin à la fois- RESTRICTED_USER: seuls les membres des rôles db_owner, dbcreator ou sysadmin- MULTI_USER: Tous les utilisateurs |
VersionType de données : int |
Numéro de version interne du code SQL Server avec lequel la base de données a été créée. Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie. | - Numéro de version : la base de données est ouverte. - NULL: La base de données n’a pas démarré. |
ReplicaIDType de données : nvarchar(128) |
ID de réplica d’une base de données/réplica hyperscale connectée. | Retourne uniquement l’ID de réplica d’une base de données/réplica Hyperscale connectée. Pour en savoir plus sur les types de réplicas, consultez les réplicas secondaires Hyperscale. - NULL: pas une base de données hyperscale ou la base de données n’est pas démarrée.S’applique à : Azure SQL Database Hyperscale. |
Types de retour
sql_variant
Exceptions
Retourne NULL une erreur ou si un appelant n’a pas l’autorisation d’afficher l’objet.
Dans SQL Server, un utilisateur peut voir uniquement les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d'un droit d'accès. Cette règle signifie que les fonctions intégrées émettrices de métadonnées, telles que OBJECT_ID peuvent retourner NULL si l’utilisateur n’a pas d’autorisations sur l’objet. Pour plus d’informations, consultez la configuration de la visibilité des métadonnées.
Notes
DATABASEPROPERTYEX retourne un seul paramètre de propriété à la fois. Pour afficher plusieurs paramètres de propriété, utilisez la vue de catalogue sys.databases.
Exemples
Les exemples de code de cet article utilisent les bases de données d'exemple AdventureWorks2025 ou AdventureWorksDW2025, que vous pouvez télécharger à partir de la page d'accueil Microsoft SQL Server Samples and Community Projects.
R. Récupérer l’état de l’option de base de données AUTO_SHRINK
Cet exemple retourne l’état de l’option AUTO_SHRINK de base de données pour la AdventureWorks base de données.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');
Voici le jeu de résultats. Cela indique qu’il AUTO_SHRINK est désactivé.
0
B. Récupérer le classement par défaut d’une base de données
Cet exemple retourne plusieurs attributs de la base de données AdventureWorks.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'Collation') AS Collation,
DATABASEPROPERTYEX('AdventureWorks2022', 'Edition') AS Edition,
DATABASEPROPERTYEX('AdventureWorks2022', 'ServiceObjective') AS ServiceObjective,
DATABASEPROPERTYEX('AdventureWorks2022', 'MaxSizeInBytes') AS MaxSizeInBytes;
Voici le jeu de résultats.
Collation Edition ServiceObjective MaxSizeInBytes
---------------------------- ------------- ---------------- --------------
SQL_Latin1_General_CP1_CI_AS DataWarehouse DW1000 5368709120
Chapitre C. Utiliser DATABASEPROPERTYEX pour vérifier la connexion au réplica
Lorsque vous utilisez la fonctionnalité de scale-out Azure SQL Database, vous pouvez vérifier si vous êtes connecté à un réplica en lecture seule ou non en exécutant la requête suivante dans le contexte de votre base de données. Elle est retournée READ_ONLY lorsque vous êtes connecté à un réplica en lecture seule. De cette façon, vous pouvez également identifier quand une requête s’exécute sur un réplica en lecture seule.
SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability');