OBJECTPROPERTYEX (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric
Retourne des informations concernant les objets étendus aux schémas dans la base de données actuelle. Pour obtenir la liste de ces objets, consultez sys.objects (Transact-SQL). OBJECTPROPERTYEX ne peut pas être utilisé pour des objets qui ne sont pas étendus aux schémas, tels que les déclencheurs DDL (Data Definition Language) et les notifications d'événements.
Conventions de la syntaxe Transact-SQL
Syntaxe
OBJECTPROPERTYEX ( id , property )
Arguments
id
Expression représentant l'ID de l'objet dans la base de données active. id est de type int et est considéré comme un objet étendu aux schémas dans le contexte de la base de données active.
property
Expression contenant les informations à retourner 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, la valeur NULL est retournée lorsque property n’est pas un nom de propriété valide, lorsque id n’est pas un ID d’objet valide, lorsque id est un type d’objet qui n’est pas pris en charge pour la propriété property spécifiée ou lorsque l’appelant n’est pas autorisé à consulter 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é. Nonnull = Type d'objet Type de données de base : char(2) |
CnstIsClustKey | Contrainte | Contrainte PRIMARY KEY avec un index cluster. 1 = Vrai 0 = Faux Type de données de base : int |
CnstIsColumn | Contrainte | Contrainte CHECK, DEFAULT ou FOREIGN KEY sur une seule colonne. 1 = Vrai 0 = Faux Type de données de base : int |
CnstIsDeleteCascade | Contrainte | Contrainte FOREIGN KEY 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 | Contrainte PRIMARY KEY avec un index non cluster. 1 = Vrai 0 = Faux Type de données de base : int |
CnstIsNotRepl | Contrainte | La contrainte est définie avec les mots clés NOT FOR REPLICATION. 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. Il se peut donc qu'elle ne s'applique pas à toutes les lignes. 1 = Vrai 0 = Faux Type de données de base : int |
CnstIsUpdateCascade | Contrainte | Contrainte FOREIGN KEY avec l'option ON UPDATE CASCADE. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsAfterTrigger | Déclencheur | Déclencheur AFTER. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsAnsiNullsOn | Fonction Transact-SQL, procédure Transact-SQL, déclencheur Transact-SQL, affichage | Définition des valeurs ANSI NULL lors de la création. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsDeleteTrigger | Déclencheur | Déclencheur DELETE. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsFirstDeleteTrigger | Déclencheur | Premier déclencheur exécuté lorsqu'une instruction DELETE est exécutée sur la table. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsFirstInsertTrigger | Déclencheur | Premier déclencheur exécuté lorsqu'une instruction INSERT est exécutée sur la table. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsFirstUpdateTrigger | Déclencheur | Premier déclencheur exécuté lorsqu'une instruction UPDATE est exécutée sur la table. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsInsertTrigger | Déclencheur | Déclencheur INSERT. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsInsteadOfTrigger | Déclencheur | Déclencheur INSTEAD OF. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsLastDeleteTrigger | Déclencheur | Dernier déclencheur activé lorsqu'une instruction DELETE est exécutée sur la table. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsLastInsertTrigger | Déclencheur | Dernier déclencheur activé lorsqu'une instruction INSERT est exécutée sur la table. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsLastUpdateTrigger | Déclencheur | Dernier déclencheur activé lorsqu'une instruction UPDATE est exécutée 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 | Définition de QUOTED_IDENTIFIER lors de 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 comme NOT FOR REPLICATION. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsUpdateTrigger | Déclencheur | Déclencheur UPDATE. 1 = Vrai 0 = Faux Type de données de base : int |
ExecIsWithNativeCompilation | Procédure Transact-SQL | S’applique à : SQL Server 2014 (12.x) et versions ultérieures. Procédure compilée en mode natif. 1 = Vrai 0 = Faux Type de données de base : int |
HasAfterTrigger | Table, vue | La table ou la vue comporte un déclencheur AFTER. 1 = Vrai 0 = Faux Type de données de base : int |
HasDeleteTrigger | Table, vue | La table ou la vue comporte un déclencheur DELETE. 1 = Vrai 0 = Faux Type de données de base : int |
HasInsertTrigger | Table, vue | La table ou la vue comporte un déclencheur INSERT. 1 = Vrai 0 = Faux Type de données de base : int |
HasInsteadOfTrigger | Table, vue | La table ou la vue comporte un déclencheur INSTEAD OF. 1 = Vrai 0 = Faux Type de données de base : int |
HasUpdateTrigger | Table, vue | La table ou la vue comporte un déclencheur UPDATE. 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 l'option ANSI NULLS de la table a la valeur ON. Toutes les comparaisons avec une valeur Null produisent la valeur 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 | Contrainte CHECK. 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 versions ultérieures. Valeur par défaut associée. 1 = Vrai 0 = Faux Type de données de base : int |
IsDefaultCnst | Tout objet étendu aux schémas | Contrainte DEFAULT. 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. Le texte est cependant à la disposition des utilisateurs qui peuvent accéder aux tables système via le port DAC 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 | Contrainte FOREIGN KEY. 1 = Vrai 0 = Faux Type de données de base : int |
IsIndexed | Table, vue | Table ou vue avec un index. 1 = Vrai 0 = Faux Type de données de base : int |
IsIndexable | Table, vue | Table ou vue dans 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 | Contrainte PRIMARY KEY. 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 | Contrainte CHECK, définition DEFAULT, 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 a la valeur ON. 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 à un schéma, créée à l'aide de SCHEMABINDING. 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 | Contrainte UNIQUE. 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 où parent_object_id est non-NULL) retournent toujours le même ID de propriétaire que leur parent. Nonnull = ID d'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. Nonnull = ID de schéma de l'objet. Type de données de base : int |
SystemDataAccess | Fonction, vue | L'objet accède aux données système, aux catalogues système ou aux tables système virtuelles, 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 comporte un déclencheur DELETE. >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 comporte le nombre de déclencheurs DELETE spécifié. Nonnull = Nombre de déclencheurs DELETE Type de données de base : int |
TableFullTextMergeStatus | Table de charge de travail | S’applique à : SQL Server 2008 (10.0.x) et versions ultérieures. 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 versions ultérieures. 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 versions ultérieures. 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 versions ultérieures. 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 versions ultérieures. 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 recherche en 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 versions ultérieures. 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 = Table sans index de recherche en texte intégral. Type de données de base : int |
TableFulltextItemCount | Table de charge de travail | S’applique à : SQL Server 2008 (10.0.x) et versions ultérieures. Nonnull = Nombre de lignes qui ont été correctement indexées en texte intégral. NULL = La table n'a pas d'index de recherche en 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 versions ultérieures. 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 versions ultérieures. 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 recherche en 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 versions ultérieures. 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 versions ultérieures. 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 comporte une contrainte CHECK. 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 comporte une contrainte DEFAULT. 1 = Vrai 0 = Faux Type de données de base : int |
TableHasDeleteTrigger | Table de charge de travail | La table comporte un déclencheur DELETE. 1 = Vrai 0 = Faux Type de données de base : int |
TableHasForeignKey | Table de charge de travail | La table comporte une contrainte FOREIGN KEY. 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 contrainte FOREIGN KEY. 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 comporte un déclencheur INSERT. 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 comporte un ROWGUIDCOL pour une 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 comporte une contrainte UNIQUE. 1 = Vrai 0 = Faux Type de données de base : int |
TableHasUpdateTrigger | Table de charge de travail | La table comporte un déclencheur UPDATE. 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 comporte un déclencheur INSERT. >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 comporte le nombre de déclencheurs INSERT spécifié. >0 = nombre de déclencheurs INSERT. 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 en raison d’un travail bcp ou BULK INSERT. 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 versions ultérieures. La table est optimisée en mémoire 1 = Vrai 0 = Faux Type de données de base : int Pour plus d’informations, consultez OLTP en mémoire (optimisation en mémoire). |
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 comporte un déclencheur UPDATE. > 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 comporte le nombre spécifié de déclencheurs UPDATE. > 0 = nombre de déclencheurs UPDATE. Type de données de base : int |
UserDataAccess | Fonction, 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. |
Cardinalité | 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 la valeur NULL en cas d'erreur ou si un appelant n'est pas autorisé à 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 générant des métadonnées, telles que OBJECTPROPERTYEX, peuvent retourner la valeur NULL si l'utilisateur ne dispose d'aucune autorisation sur l'objet. Pour plus d'informations, consultez Metadata Visibility Configuration.
Remarques
Moteur de base de données considère que object_id se situe dans le contexte de la base de données active. Une requête référençant un object_id dans une autre base de données retourne NULL ou des résultats incorrects. Par exemple, dans la requête qui suit, le contexte de la base de données active est la base de données MASTER. Le Moteur de base de données essaiera de retourner la valeur de la propriété pour l’object-id spécifié dans cette base de données plutôt que dans la base de données spécifiée dans la requête. La requête retourne des résultats incorrects car la vue vEmployee
ne se trouve pas dans la base de données MASTER.
USE master;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO
OBJECTPROPERTYEX(view_id, 'IsIndexable') peut utiliser un volume important de ressources système, car l’évaluation de la propriété IsIndexable nécessite l’analyse de la définition de la vue, sa normalisation et son 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 la valeur 1 (True) lorsqu’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 Metadata Visibility Configuration.
Exemples
R. Recherche du type de base d'un objet
L'exemple qui suit crée un SYNONYM MyEmployeeTable
pour la table Employee
de la base de données AdventureWorks2022
, puis renvoie 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. Renvoi d'une valeur de propriété
L'exemple suivant renvoie le nombre de déclencheurs UPDATE sur la table spécifiée.
USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');
GO
C. Recherche de tables comportant une contrainte FOREIGN KEY
L'exemple suivant utilise la propriété TableHasForeignKey
pour retourner toutes les tables comportant une contrainte FOREIGN KEY.
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
Voir aussi
CREATE SYNONYM (Transact-SQL)
Fonctions de métadonnées (Transact-SQL)
OBJECT_DEFINITION (Transact-SQL)
OBJECT_ID (Transact-SQL)
OBJECT_NAME (Transact-SQL)
sys.objects (Transact-SQL)
ALTER AUTHORIZATION (Transact-SQL)
TYPEPROPERTY (Transact-SQL)