Visualizzazione di proprietà estese

Le proprietà estese degli oggetti di database possono essere visualizzate utilizzando la funzione predefinita fn_listextendedproperty o la vista del catalogo sys.extended_properties in un'istruzione SQL. Le proprietà estese possono inoltre essere visualizzate utilizzando Esplora oggetti di SQL Server Management Studio.

Utilizzo della funzione fn_listextendedproperty

La funzione fn_listextendedproperty consente di visualizzare le proprietà estese di un singolo oggetto di database o di tutti gli oggetti presenti nel database, in base al tipo di oggetto. È ad esempio possibile restituire le proprietà estese di una tabella o di tutte le colonne della tabella.

Negli esempi seguenti viene illustrato come visualizzare le proprietà estese per un'ampia gamma di oggetti utilizzando la funzione fn_listextendedproperty in un'istruzione SELECT.

A. Visualizzazione delle proprietà estese in un database

Nell'esempio seguente vengono visualizzate tutte le proprietà estese impostate nel database stesso.

USE AdventureWorks;
GO
SELECT objtype, objname, name, value
FROM fn_listextendedproperty(default, default, default, default, default, default, default);
GO

Set di risultati:

objtype    objname     name            value
---------  ---------   -----------     ----------------------------
NULL       NULL        MS_Description  AdventureWorks Sample OLTP Database

(1 row(s) affected)

B. Visualizzazione delle proprietà estese in tutte le colonne di una tabella

Nell'esempio seguente vengono visualizzate le proprietà estese delle colonne nella tabella ScrapReason contenuta nello schema Production.

USE AdventureWorks;
GO
SELECT objtype, objname, name, value
FROM fn_listextendedproperty (NULL, 'schema', 'Production', 'table', 'ScrapReason', 'column', default);
GO

Set di risultati:

objtype objname      name            value   
------- -----------  -------------   ------------------------
COLUMN ScrapReasonID MS_Description  Primary key for ScrapReason records.
COLUMN Name          MS_Description  Failure description.
COLUMN ModifiedDate  MS_Description  Date the record was last updated.

(3 row(s) affected)

C. Visualizzazione delle proprietà estese in tutte le tabelle incluse in uno schema

Nell'esempio seguente vengono visualizzate le proprietà estese di tutte le tabelle incluse nello schema Sales .

USE AdventureWorks;
GO
SELECT objtype, objname, name, value
FROM fn_listextendedproperty (NULL, 'schema', 'Sales', 'table', default, NULL, NULL);
GO

Utilizzo della vista del catalogo sys.extended_properties

Le proprietà estese possono essere visualizzate eseguendo una query sulla vista del catalogo sys.extended_properties. Questa vista offre un metodo semplice per restituire i valori delle proprietà estese e può essere utilizzata in combinazione con altre viste del catalogo per restituire ulteriori dati, ad esempio nomi o tipi degli oggetti associati alla proprietà estesa.

Negli esempi seguenti viene illustrato come visualizzare le proprietà estese per un'ampia gamma di oggetti utilizzando le viste del catalogo sys.extended_properties. L'unione in join con ulteriori viste del catalogo consente di restituire i nomi degli oggetti, ad esempio i nomi delle colonne di una tabella.

A. Visualizzazione di tutte le proprietà estese in un database

Nell'esempio seguente vengono visualizzate tutte le proprietà estese del database di esempio AdventureWorks.

USE AdventureWorks;
GO
SELECT class, class_desc, major_id, minor_id, name, value
FROM sys.extended_properties;
GO

B. Visualizzazione delle proprietà estese di tutti gli indici in un database

Nell'esempio seguente vengono visualizzate tutte le proprietà estese degli indici nel database di esempio AdventureWorks.

USE AdventureWorks;
GO
SELECT class, class_desc, major_id, minor_id, ep.name, s.name AS [Index Name], value
FROM sys.extended_properties AS ep
INNER JOIN sys.indexes AS s ON ep.major_id = s.object_id AND ep.minor_id = s.index_id
WHERE class = 7;
GO

C. Visualizzazione delle proprietà estese delle colonne in una tabella

Nell'esempio seguente vengono visualizzate le proprietà estese di tutte le colonne in tutte le tabelle nel database di esempio AdventureWorks.

USE AdventureWorks;
GO
SELECT major_id, minor_id, t.name AS [Table Name], c.name AS [Column Name], value AS [Extended Property]
FROM sys.extended_properties AS ep
INNER JOIN sys.tables AS t ON ep.major_id = t.object_id 
INNER JOIN sys.columns AS c ON ep.major_id = c.object_id AND ep.minor_id = c.column_id
WHERE class = 1;
GO

Utilizzo di Esplora oggetti per visualizzare le proprietà estese

Le proprietà estese possono essere visualizzate, aggiunte ed eliminate tramite Esplora oggetti di SQL Server Management Studio. È possibile visualizzare le proprietà estese solo per l'oggetto selezionato. Per visualizzare le proprietà estese di un oggetto tramite Esplora oggetti, eseguire la procedura seguente:

  1. In Esplora oggetti fare clic con il pulsante destro del mouse sull'oggetto di database e quindi scegliere Proprietà.

  2. Nella finestra di dialogo Proprietà selezionare Proprietà estese. La proprietà estesa verrà visualizzata nel riquadro Proprietà. In questa finestra di dialogo è possibile eliminare le proprietà esistenti e aggiungere nuove proprietà.