Quali sono i valori non documentati per referencing_class in sys.sql_expression_dependencies?
In SQL Server, la sys.sql_expression_dependenciesvista del catalogo di sistema "Contiene una riga per ogni dipendenza per nome da un'entità definita dall'utente nel database corrente", per citare i documenti. Una delle colonne restituite è referencing_class, di cui i documenti dicono questo:
referencing_classtinyint Classe dell'entità di riferimento.
1 = Oggetto o colonna
12 = Trigger DDL database
13 = Trigger DDL del server
Non è annullabile.
Tuttavia, in questo momento sto esaminando un database in cui è presente una riga con referencing_classuguale a 7. Cosa significa 7 e qual è l'elenco corretto di valori possibili qui?
Risposte
Questa carenza nei documenti è stata sollevata come un problema nell'agosto 2019 , con il commento di MS
Abbiamo creato un elemento di lavoro interno (1595947) per esaminare e potenzialmente aggiornare l'articolo.
Chiuderemo questo elemento e tracciamo con il nostro oggetto di lavoro interno
Fino a quando MS non aggiornerà l'articolo (o accetterà un PR contro i documenti), ecco un elenco probabilmente parziale degli altri valori possibili:
referencing_class referencing_class_desc
----------------- ----------------------
7 INDEX
9 STATISTICS
- 7 = Indice filtrato (si noti che i normali indici non filtrati non sono presenti in questa vista di sistema)
- 9 = Statistiche filtrate
Questo documento di supporto Microsoft mostra referencing_class = 7in relazione agli indici filtrati.
Sulla base della sezione Osservazioni probabilmente non ce ne sono altri.