Exibindo propriedades estendidas

As propriedades estendidas em objetos de banco de dados podem ser exibidas usando-se a função interna fn_listextendedproperty ou a exibição de catálogo sys.extended_properties em uma instrução SQL. Além disso, propriedades estendidas podem ser exibidas usando o Pesquisador de Objetos do SQL Server Management Studio.

Usando a função fn_listextendedproperty

A função fn_listextendedproperty pode exibir propriedades estendidas em um único objeto de banco de dados ou em todos os objetos de banco de dados com base em um tipo de objeto. Por exemplo, é possível retornar propriedades estendidas em uma tabela ou em todas as colunas da tabela.

Os exemplos a seguir demonstram como exibir propriedades estendidas para uma série de objetos pelo uso da função fn_listextendedproperty em uma instrução SELECT.

A. Exibindo propriedades estendidas em um banco de dados

O exemplo a seguir exibe todas as propriedades estendidas definidas no próprio banco de dados.

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

Aqui está o conjunto de resultados.

objtype objname name value

--------- --------- ----------- ----------------------------

NULL NULL MS_Description AdventureWorks2008 Sample OLTP Database

(1 row(s) affected)

B. Exibindo propriedades estendidas em todas as colunas de uma tabela

O exemplo a seguir exibe propriedades estendidas em colunas da tabela ScrapReason contida no esquema Production.

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

Aqui está o conjunto de resultados.

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. Exibindo propriedades estendidas em todas as tabelas de um esquema

O exemplo a seguir exibe propriedades estendidas de todas as tabelas contidas no esquema Sales .

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

Usando a exibição de catálogo sys.extended_properties

As propriedades estendidas podem ser exibidas por meio de consulta da exibição de catálogo sys.extended_properties. A exibição fornece um método simples para retornar valores de propriedades estendidas e pode ser combinada com outras exibições de catálogo para retornar dados adicionais, como nomes de objeto ou tipos de objeto associados à propriedade estendida.

Os exemplos a seguir demonstram como exibir propriedades estendidas para uma série de objetos pelo uso de exibições de catálogo sys.extended_properties. Adiciona nomes de objeto de retorno de exibições de catálogo adicionais, como nomes de colunas em uma tabela.

A. Exibindo todas as propriedades estendidas em um banco de dados

O exemplo a seguir exibe todas as propriedades estendidas no banco de dados de exemplo AdventureWorks2008R2.

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

B. Exibindo propriedades estendidas para todos os índices de um banco de dados

O exemplo a seguir exibe todas as propriedades estendidas de índices do banco de dados de exemplo AdventureWorks2008R2.

USE AdventureWorks2008R2;
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. Exibindo propriedades estendidas para as colunas de uma tabela

O exemplo a seguir exibe propriedades estendidas para todas as colunas em todas as tabelas do banco de dados de exemplo AdventureWorks2008R2.

USE AdventureWorks2008R2;
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

Usando o Pesquisador de Objetos para exibir propriedades estendidas

As propriedades estendidas podem ser exibidas, adicionadas e excluídas por meio do Pesquisador de Objetos do SQL Server Management Studio. As propriedades estendidas só podem ser exibidas para o objeto selecionado. Para exibir as propriedades estendidas de um objeto que usa o Pesquisador de Objetos, siga estas etapas:

  1. No Pesquisador de Objetos, clique com o botão direito do mouse no objeto de banco de dados e selecione Propriedades.

  2. Na caixa de diálogo Propriedades, selecione Propriedades Estendidas. A propriedade estendida é exibida no painel Propriedades. As propriedades existentes podem ser excluídas e novas propriedades podem ser adicionadas nessa caixa de diálogo.