Quelles sont les valeurs non documentées pour referencing_class dans sys.sql_expression_dependencies?

Oct 22 2020

Dans SQL Server, la sys.sql_expression_dependenciesvue du catalogue système «Contient une ligne pour chaque dépendance par nom sur une entité définie par l'utilisateur dans la base de données actuelle», pour citer la documentation. L'une des colonnes renvoyées est referencing_class, dont la documentation dit ceci:

referencing_class tinyint Classe de l'entité de référence.

  • 1 = objet ou colonne

  • 12 = Déclencheur DDL de base de données

  • 13 = déclencheur DDL du serveur

N'est pas nullable.

Cependant, je regarde une base de données en ce moment dans laquelle il y a une ligne avec referencing_classégal à 7. Que signifie 7, et quelle est la liste correcte des valeurs possibles ici?

Réponses

3 AakashM Oct 22 2020 at 19:56

Cette lacune dans la documentation a été soulevée comme un problème en août 2019 , le commentaire des États membres étant

Nous avons créé un élément de travail interne (1595947) pour étudier et éventuellement mettre à jour l'article.

Nous allons fermer cet élément et effectuer le suivi avec notre élément de travail interne

Jusqu'à ce que MS mette à jour l'article (ou accepte un PR par rapport aux documents), voici une liste probablement partielle des autres valeurs possibles:


referencing_class referencing_class_desc
----------------- ----------------------
7                 INDEX
9                 STATISTICS
  • 7 = index filtré (notez que les index normaux non filtrés ne figurent pas du tout dans cette vue système)
  • 9 = Statistiques filtrées

Ce document de support Microsoft s'affiche referencing_class = 7en relation avec les index filtrés.

Basé sur la section Remarques , il n'y en a probablement pas d'autres.