Partager via


OBJECTPROPERTYEX (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Point de terminaison d’analytique SQL dans Microsoft FabricEntrepôt dans Microsoft FabricBase de données SQL dans Microsoft Fabric

La OBJECTPROPERTYEX fonction retourne des informations sur les objets délimités par le schéma dans la base de données active.

Pour obtenir la liste de ces objets, consultez sys.objects (Transact-SQL). OBJECTPROPERTYEX ne peut pas être utilisé pour les objets qui ne sont pas délimités par le schéma, tels que les déclencheurs de langage de définition de données (DDL) et les notifications d’événements.

Conventions de la syntaxe Transact-SQL

Syntaxe

OBJECTPROPERTYEX ( id , property )

Arguments

Identifiant

Expression qui représente l’ID de l’objet dans la base de données active. L’ID est int et est supposé être un objet d’étendue de schéma dans le contexte de base de données actuel.

property

Expression qui contient les informations à renvoyer pour l’objet spécifié par ID. Le type de retour est sql_variant. Le tableau qui suit indique le type de données de base pour chaque valeur de propriété.

Notes

Sauf indication contraire, NULL est retourné lorsque la propriété n’est pas un nom de propriété valide, que l’ID n’est pas un ID d’objet valide, qu’il s’agit d’un type d’objet non pris en charge pour la propriété spécifiée ou que l’appelant n’a pas l’autorisation d’afficher les métadonnées de l’objet.

Nom de la propriété Type d'objet Description et valeurs retournées
BaseType Tout objet étendu aux schémas Identifie le type de base de l'objet. Lorsque l’objet spécifié est un SYNONYM, le type de base de l’objet sous-jacent est retourné.

Non Null = Type d’objet

Type de données de base : char(2)
CnstIsClustKey Contrainte PRIMARY KEY contrainte avec un index cluster.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsColumn Contrainte CHECK, DEFAULTou FOREIGN KEY contrainte sur une seule colonne.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsDeleteCascade Contrainte FOREIGN KEY contrainte avec l’option ON DELETE CASCADE .

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsDisabled Contrainte Contrainte désactivée.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsNonclustKey Contrainte PRIMARY KEY contrainte avec un index non cluster.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsNotRepl Contrainte La contrainte est définie à l’aide des NOT FOR REPLICATION mots clés.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsNotTrusted Contrainte La contrainte a été activée sans vérification des lignes existantes. Par conséquent, la contrainte peut ne pas contenir pour toutes les lignes.

1 = Vrai

0 = Faux

Type de données de base : int
CnstIsUpdateCascade Contrainte FOREIGN KEY contrainte avec l’option ON UPDATE CASCADE .

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsAfterTrigger Déclencheur AFTER gâchette.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsAnsiNullsOn Fonction Transact-SQL, procédure Transact-SQL, déclencheur Transact-SQL, affichage Paramètre du moment de ANSI_NULLS la création.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsDeleteTrigger Déclencheur DELETE gâchette.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsFirstDeleteTrigger Déclencheur Premier déclencheur déclenché lorsqu’un DELETE est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsFirstInsertTrigger Déclencheur Premier déclencheur déclenché lorsqu’un INSERT déclencheur est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsFirstUpdateTrigger Déclencheur Premier déclencheur déclenché lorsqu’un UPDATE déclencheur est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsInsertTrigger Déclencheur INSERT gâchette.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsInsteadOfTrigger Déclencheur INSTEAD OF gâchette.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsLastDeleteTrigger Déclencheur Dernier déclencheur déclenché lorsqu’un DELETE est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsLastInsertTrigger Déclencheur Dernier déclencheur déclenché lorsqu’un INSERT déclencheur est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsLastUpdateTrigger Déclencheur Dernier déclencheur déclenché lorsqu’un UPDATE déclencheur est exécuté sur la table.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsQuotedIdentOn Fonction Transact-SQL, procédure Transact-SQL, déclencheur Transact-SQL, affichage Paramètre du moment de QUOTED_IDENTIFIER la création.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsStartup Procédure Procédure de démarrage.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsTriggerDisabled Déclencheur Déclencheur désactivé.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsTriggerNotForRepl Déclencheur Déclencheur défini en tant que NOT FOR REPLICATION.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsUpdateTrigger Déclencheur UPDATE gâchette.

1 = Vrai

0 = Faux

Type de données de base : int
ExecIsWithNativeCompilation Procédure Transact-SQL S’applique à : SQL Server 2014 (12.x) et ultérieur.

Procédure compilée en mode natif.

1 = Vrai

0 = Faux

Type de données de base : int
HasAfterTrigger Tableau ou vue La table ou la vue a un AFTER déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
HasDeleteTrigger Tableau ou vue La table ou la vue a un DELETE déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
HasInsertTrigger Tableau ou vue La table ou la vue a un INSERT déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
HasInsteadOfTrigger Tableau ou vue La table ou la vue a un INSTEAD OF déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
HasUpdateTrigger Tableau ou vue La table ou la vue a un UPDATE déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
IsAnsiNullsOn Fonction Transact-SQL, procédure Transact-SQL, table, déclencheur Transact-SQL, affichage Spécifie que le ANSI NULLS paramètre d’option de la table est ON, ce qui signifie que toutes les comparaisons par rapport à une valeur Null sont évaluées à UNKNOWN. Ce paramètre s'applique à l'ensemble des expressions dans la définition de la table, y compris les contraintes et les colonnes calculées, aussi longtemps que la table existe.

1 = Vrai

0 = Faux

Type de données de base : int
IsCheckCnst Tout objet étendu aux schémas CHECK contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsConstraint Tout objet étendu aux schémas Contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsDefault Tout objet étendu aux schémas S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Valeur par défaut associée.

1 = Vrai

0 = Faux

Type de données de base : int
IsDefaultCnst Tout objet étendu aux schémas DEFAULT contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsDeterministic Fonctions scalaires et fonctions table, vue Propriété de déterminisme de la fonction ou de la vue.

1 = Déterministe

0 = Non déterministe

Type de données de base : int
IsEncrypted Fonction Transact-SQL, procédure Transact-SQL, table, déclencheur Transact-SQL, affichage Indique que le texte d'origine provenant de l'instruction du module a été converti dans un format d'obfuscation. La sortie générée par l'obfuscation n'est pas visible directement dans les affichages catalogue de SQL Server 2005 (9.x). Les utilisateurs n’ayant pas accès aux tables système ou aux fichiers de base de données ne peuvent pas récupérer le texte obscurci. Toutefois, le texte est disponible pour les utilisateurs qui peuvent accéder aux tables système via la connexion de diagnostic pour les administrateurs de base de données ou accéder directement aux fichiers de base de données. Les utilisateurs qui peuvent associer un débogueur au processus serveur peuvent également récupérer la procédure d'origine de la mémoire au moment de l'exécution.

1 = Chiffrée

0 = Non chiffrée

Type de données de base : int
IsExecuted Tout objet étendu aux schémas Spécifie quel objet peut être exécuté (vue, procédure, fonction ou déclencheur).

1 = Vrai

0 = Faux

Type de données de base : int
IsExtendedProc Tout objet étendu aux schémas Procédure étendue.

1 = Vrai

0 = Faux

Type de données de base : int
IsForeignKey Tout objet étendu aux schémas FOREIGN KEY contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsIndexed Tableau ou vue Table ou vue avec un index.

1 = Vrai

0 = Faux

Type de données de base : int
IsIndexable Tableau ou vue Table ou vue sur laquelle un index peut être créé.

1 = Vrai

0 = Faux

Type de données de base : int
IsInlineFunction Fonction Fonction Inline.

1 = Fonction Inline

0 = Fonction non Inline

Type de données de base : int
IsMSShipped Tout objet étendu aux schémas Objet créé durant l'installation de SQL Server.

1 = Vrai

0 = Faux

Type de données de base : int
IsPrecise Colonne calculée, fonction, type défini par l'utilisateur, vue Indique si l'objet contient un calcul imprécis, tel que des opérations en virgule flottante.

1 = Précis

0 = Imprécis

Type de données de base : int
IsPrimaryKey Tout objet étendu aux schémas PRIMARY KEY contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsProcedure Tout objet étendu aux schémas Procédure.

1 = Vrai

0 = Faux

Type de données de base : int
IsQuotedIdentOn CHECK contrainte, DEFAULT définition, fonction Transact-SQL, procédure Transact-SQL, table, déclencheur Transact-SQL, affichage Spécifie que le paramètre d’identificateur entre guillemets de l’objet est ON, ce qui signifie que les guillemets doubles délimitent les identificateurs dans toutes les expressions impliquées dans la définition de l’objet.

1 = Vrai

0 = Faux

Type de données de base : int
IsQueue Tout objet étendu aux schémas File d'attente Service Broker

1 = Vrai

0 = Faux

Type de données de base : int
IsReplProc Tout objet étendu aux schémas Procédure de réplication.

1 = Vrai

0 = Faux

Type de données de base : int
IsRule Tout objet étendu aux schémas Règle liée.

1 = Vrai

0 = Faux

Type de données de base : int
IsScalarFunction Fonction Fonction scalaire.

1 = Fonction scalaire

0 = Fonction non scalaire

Type de données de base : int
IsSchemaBound Fonction, Procédure, vue Fonction ou vue liée au schéma créée à l’aide SCHEMABINDINGde .

1 = Fonction liée à un schéma

0 = Fonction non liée à un schéma

Type de données de base : int
IsSystemTable Table de charge de travail Table système.

1 = Vrai

0 = Faux

Type de données de base : int
IsSystemVerified Colonne calculée, fonction, type défini par l'utilisateur, vue Les propriétés de précision et de déterminisme de l'objet peuvent être vérifiées par SQL Server.

1 = Vrai

0 = Faux

Type de données de base : int
IsTable Table de charge de travail Table.

1 = Vrai

0 = Faux

Type de données de base : int
IsTableFunction Fonction Fonction table.

1 = Fonction table

0 = Fonction non-table

Type de données de base : int
IsTrigger Tout objet étendu aux schémas Déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
IsUniqueCnst Tout objet étendu aux schémas UNIQUE contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
IsUserTable Table de charge de travail Table définie par l'utilisateur.

1 = Vrai

0 = Faux

Type de données de base : int
IsView Vue Vue.

1 = Vrai

0 = Faux

Type de données de base : int
OwnerId Tout objet étendu aux schémas Propriétaire de l'objet.

Remarque : Le propriétaire du schéma n’est pas nécessairement le propriétaire de l’objet. Par exemple, les objets enfants (ceux qui parent_object_id sont non null) retournent toujours le même ID de propriétaire que le parent.

Non null = ID utilisateur de base de données du propriétaire de l’objet.

NULL = Type d’objet non pris en charge ou ID d’objet non valide.

Type de données de base : int
SchemaId Tout objet étendu aux schémas ID du schéma associé à l'objet.

Non null = ID de schéma de l’objet.

Type de données de base : int
SystemDataAccess Fonction ou vue L’objet accède aux données système, aux catalogues système ou aux tables de système virtuel dans l’instance locale de SQL Server.

0 = Aucun(e)

1 = Lecture

Type de données de base : int
TableDeleteTrigger Table de charge de travail La table a un DELETE déclencheur.

>1 = ID du premier déclencheur du type spécifié.

Type de données de base : int
TableDeleteTriggerCount Table de charge de travail La table contient le nombre spécifié de DELETE déclencheurs.

Nonnull = Nombre de DELETE déclencheurs

Type de données de base : int
TableFullTextMergeStatus Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Indique s'il s'agit d'une table qui a un index de recherche en texte intégral qui est en cours de fusion.

0 = La table n'a pas d'index de recherche en texte intégral ou l'index de recherche en texte intégral n'est pas en cours de fusion.

1 = L'index de recherche en texte intégral est en cours de fusion.
TableFullTextBackgroundUpdateIndexOn Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

L'index de mise à jour d'arrière-plan en texte intégral (suivi des modifications automatiques) est activé pour la table.

1 = TRUE

0 = FALSE

Type de données de base : int
TableFulltextCatalogId Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

ID du catalogue de texte intégral dans lequel résident les données d'indexation de texte intégral de la table.

Différent de zéro = ID de catalogue de texte intégral associé à l'index unique qui identifie les lignes dans une table indexée en texte intégral.

0 = Table sans index de recherche en texte intégral.

Type de données de base : int
TableFullTextChangeTrackingOn Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Le suivi des modifications de texte intégral est activé pour la table.

1 = TRUE

0 = FALSE

Type de données de base : int
TableFulltextDocsProcessed Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Nombre de lignes traitées depuis le démarrage de l'indexation de texte intégral. Dans une table en cours d'indexation pour une recherche en texte intégral, toutes les colonnes d'une ligne sont considérées comme faisant partie d'un même document à indexer.

0 = Aucune analyse ou indexation de texte intégral active n'est terminée.

> 0 = une des valeurs suivantes (A ou B) : A) nombre de documents traités par les opérations d’insertion ou de mise à jour depuis le démarrage de l’alimentation du suivi des modifications complet, incrémentiel ou manuel ; B) nombre de lignes traitées par les opérations d’insertion ou de mise à jour depuis l’activation de l’alimentation du suivi des modifications avec index de mise à jour en arrière-plan, depuis la modification du schéma d’index de recherche en texte intégral, depuis la reconstruction du catalogue de recherche en texte intégral ou depuis le redémarrage de l’instance de SQL Server et ainsi de suite.

NULL = La table n’a pas d’index de texte intégral.

Type de données de base : int

Remarque Cette propriété ne contrôle pas et ne compte pas les lignes supprimées.
TableFulltextFailCount Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Nombre de lignes que la recherche en texte intégral n'a pas indexées.

0 = Le remplissage est terminé.

>0 = une des valeurs suivantes (A ou B) : A) nombre de documents qui n’ont pas été indexés depuis le démarrage de l’alimentation du suivi des modifications complet, incrémentiel ou manuel ; B) pour le suivi des modifications avec index de mise à jour en arrière-plan, nombre de lignes qui n’ont pas été indexées depuis le démarrage ou le redémarrage de l’alimentation. Ceci peut être provoqué par une modification du schéma, une reconstruction du catalogue, un redémarrage du serveur, etc.

NULL = La table n’a pas d’index Full-Text.

Type de données de base : int
TableFulltextItemCount Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Non null = Nombre de lignes indexées avec succès en texte intégral.

NULL = La table n’a pas d’index de texte intégral.

Type de données de base : int
TableFulltextKeyColumn Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

ID de la colonne associée à l'index de colonne unique qui fait partie de la définition d'un index de recherche en texte intégral et d'un index sémantique.

0 = Table sans index de recherche en texte intégral.

Type de données de base : int
TableFulltextPendingChanges Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

Nombre d'entrées de suivi des modifications en attente de traitement.

0 = Le suivi des modifications n'est pas activé.

NULL = La table n’a pas d’index de texte intégral.

Type de données de base : int
TableFulltextPopulateStatus Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

0 = Inactif.

1 = Remplissage complet en cours.

2 = Remplissage incrémentiel en cours.

3 = Propagation des changements suivis en cours.

4 = Création de l'index de mise à jour d'arrière-plan en cours, par exemple le suivi des modifications automatiques.

5 = Indexation de texte intégral accélérée ou suspendue.

6 = Une erreur s’est produite. Examinez le journal d’analyse pour plus d’informations. Pour plus d’informations, consultez la section Résolution des erreurs dans une alimentation de texte intégral (Analyse) dans Alimenter des index de recherche en texte intégral.

Type de données de base : int
TableFullTextSemanticExtraction Table de charge de travail S’applique à : SQL Server 2012 (11.x) et versions ultérieures.

La table est activée pour l'indexation sémantique.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasActiveFulltextIndex Table de charge de travail S’applique à : SQL Server 2008 (10.0.x) et ultérieur.

La table dispose d'un index de recherche en texte intégral actif.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasCheckCnst Table de charge de travail La table a une CHECK contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasClustIndex Table de charge de travail La table comporte un index cluster.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasDefaultCnst Table de charge de travail La table a une DEFAULT contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasDeleteTrigger Table de charge de travail La table a un DELETE déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasForeignKey Table de charge de travail La table a une FOREIGN KEY contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasForeignRef Table de charge de travail La table est référencée par une FOREIGN KEY contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasIdentity Table de charge de travail La table comporte une colonne d'identité.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasIndex Table de charge de travail La table comporte un index de type non défini.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasInsertTrigger Table de charge de travail L’objet a un INSERT déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasNonclustIndex Table de charge de travail La table comporte un index non cluster.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasPrimaryKey Table de charge de travail La table comporte une clé primaire.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasRowGuidCol Table de charge de travail La table a une ROWGUIDCOL colonne uniqueidentifier .

1 = Vrai

0 = Faux

Type de données de base : int
TableHasTextImage Table de charge de travail La table comporte une colonne text, ntext ou image.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasTimestamp Table de charge de travail La table comporte une colonne timestamp.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasUniqueCnst Table de charge de travail La table a une UNIQUE contrainte.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasUpdateTrigger Table de charge de travail L’objet a un UPDATE déclencheur.

1 = Vrai

0 = Faux

Type de données de base : int
TableHasVarDecimalStorageFormat Table de charge de travail La table est activée pour le format de stockage vardecimal.

1 = Vrai

0 = Faux
TableInsertTrigger Table de charge de travail La table a un INSERT déclencheur.

>1 = ID du premier déclencheur du type spécifié.

Type de données de base : int
TableInsertTriggerCount Table de charge de travail La table contient le nombre spécifié de INSERT déclencheurs.

>0 = Nombre de INSERT déclencheurs.

Type de données de base : int
TableIsFake Table de charge de travail La table n'est pas réelle. Elle est matérialisée en interne à la demande par le Moteur de base de données.

1 = Vrai

0 = Faux

Type de données de base : int
TableIsLockedOnBulkLoad Table de charge de travail La table est verrouillée, car un bcp ou BULK INSERT un travail.

1 = Vrai

0 = Faux

Type de données de base : int
TableIsMemoryOptimized Table de charge de travail S’applique à : SQL Server 2014 (12.x) et ultérieur.

La table est optimisée en mémoire

1 = Vrai

0 = Faux

Type de données de base : int

Pour plus d’informations, consultez In-Memory vue d’ensemble d’OLTP et les scénarios d’utilisation.
TableIsPinned Table de charge de travail La table est épinglée pour être conservée dans le cache de données.

0 = Faux

Cette fonctionnalité n'est pas prise en charge par SQL Server 2005 (9.x) et versions ultérieures.
TableTextInRowLimit Table de charge de travail Cette table comporte un jeu d'options text in row.

> 0 = nombre maximal d’octets autorisé pour le texte dans la ligne.

0 = l'option text in row n'est pas définie.

Type de données de base : int
TableUpdateTrigger Table de charge de travail La table a un UPDATE déclencheur.

> 1 = ID du premier déclencheur du type spécifié.

Type de données de base : int
TableUpdateTriggerCount Table de charge de travail La table a le nombre spécifié de UPDATE déclencheurs.

> 0 = Nombre de UPDATE déclencheurs.

Type de données de base : int
UserDataAccess Fonction ou vue Indique que l'objet a accès aux données utilisateur, aux tables utilisateur, dans l'instance locale de SQL Server.

1 = Lecture

0 = Aucun(e)

Type de données de base : int
TableHasColumnSet Table de charge de travail La table comporte un jeu de colonnes.

0 = Faux

1 = Vrai

Pour plus d’informations, consultez Utiliser des jeux de colonnes.
Cardinality Table (système ou définie par l'utilisateur), vue ou index S’applique à : SQL Server 2012 (11.x) et versions ultérieures.

Nombre de lignes dans l'objet spécifié.
TableTemporalType Table de charge de travail S’applique à : SQL Server 2016 (13.x) et versions ultérieures.

Spécifie le type de table.

0 = table non temporelle

1 = table historique de la table à système par version

2 = table temporelle à système par version

Types de retour

sql_variant

Exceptions

Retourne NULL une erreur ou si un appelant n’a pas l’autorisation d’afficher l’objet.

Un utilisateur peut voir uniquement les métadonnées des éléments sécurisables qui lui appartiennent ou pour lesquels il dispose d'une autorisation. Cela signifie que les fonctions intégrées émettrices de métadonnées telles que OBJECTPROPERTYEX peuvent retourner NULL si l’utilisateur n’a aucune autorisation sur l’objet. Pour plus d’informations, consultez la configuration de la visibilité des métadonnées.

Remarques

Moteur de base de données considère que object_id se situe dans le contexte de la base de données active. Requête qui fait référence à une object_id dans une autre base de données retourne ou produit NULL des résultats incorrects. Par exemple, dans la requête suivante, le contexte de base de données actuel est la master base de données. Le moteur de base de données tente de retourner la valeur de propriété de la object_id spécifiée dans cette base de données au lieu de la base de données spécifiée dans la requête. La requête retourne des résultats incorrects, car la vue vEmployee n’est pas dans la master base de données.

USE master;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO

OBJECTPROPERTYEX(view_id, 'IsIndexable') peut consommer des ressources informatiques importantes, car l’évaluation de la propriété IsIndexable nécessite l’analyse de la définition de vue, de la normalisation et de l’optimisation partielle. Bien que la propriété IsIndexable identifie les tables ou les vues qui peuvent être indexées, la création réelle de l'index peut malgré tout échouer si certaines conditions de clé d'index ne sont pas remplies. Pour plus d’informations, consultez CREATE INDEX (Transact-SQL).

OBJECTPROPERTYEX (table_id, 'TableHasActiveFulltextIndex') retourne une valeur de 1 (true) quand au moins une colonne d’une table est ajoutée pour l’indexation. L'indexation de texte intégral est activée au niveau du remplissage dès l'ajout de la première colonne à indexer.

Des restrictions sur la visibilité des métadonnées sont appliquées à le jeu de résultats. Pour plus d’informations, consultez la configuration de la visibilité des métadonnées.

Exemples

R. Rechercher le type de base d’un objet

L’exemple suivant crée une SYNONYMMyEmployeeTable table Employee dans la AdventureWorks2025 base de données, puis retourne le type de base du SYNONYM.

USE AdventureWorks2022;
GO
CREATE SYNONYM MyEmployeeTable FOR HumanResources.Employee;
GO
SELECT OBJECTPROPERTYEX ( object_id(N'MyEmployeeTable'), N'BaseType')AS [Base Type];
GO

Le jeu de résultats montre que le type de base de l'objet sous-jacent, la table Employee, est une table utilisateur.

Base Type
--------
U

B. Retourner une valeur de propriété

L’exemple suivant retourne le nombre de UPDATE déclencheurs sur la table spécifiée.

USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');
GO

C. Rechercher des tables qui ont une contrainte FOREIGN KEY

L’exemple suivant utilise la TableHasForeignKey propriété pour retourner toutes les tables qui ont une FOREIGN KEY contrainte.

USE AdventureWorks2022;
GO
SELECT name, object_id, schema_id, type_desc
FROM sys.objects
WHERE OBJECTPROPERTYEX(object_id, N'TableHasForeignKey') = 1
ORDER BY name;
GO

Exemples : Azure Synapse Analytics et Analytics Platform System (PDW)

D. Recherche du type de base d’un objet

L’exemple suivant retourne le type de base de l’objet dbo.DimReseller.

-- Uses AdventureWorks

SELECT OBJECTPROPERTYEX ( object_id(N'dbo.DimReseller'), N'BaseType')AS BaseType;

Le jeu de résultats montre que le type de base de l'objet sous-jacent, la table dbo.DimReseller, est une table utilisateur.

BaseType
--------
U