Partilhar via


OBJECTPROPERTYEX (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

A OBJECTPROPERTYEX função retorna informações sobre objetos com escopo de esquema no banco de dados atual.

Para obter uma lista desses objetos, consulte sys.objects (Transact-SQL). OBJECTPROPERTYEX não pode ser usado para objetos que não têm escopo de esquema, como gatilhos DDL (linguagem de definição de dados) e notificações de eventos.

Transact-SQL convenções de sintaxe

Sintaxe

OBJECTPROPERTYEX ( id , property )

Arguments

ID

Uma expressão que representa a ID do objeto no banco de dados atual. ID é int e é assumido como um objeto com escopo de esquema no contexto de banco de dados atual.

propriedade

Uma expressão que contém as informações a serem retornadas para o objeto especificado pela ID. O tipo de retorno é sql_variant. A tabela a seguir mostra o tipo de dados base para cada valor de propriedade.

Observação

A menos que indicado de outra forma, NULL é retornado quando a propriedade não é um nome de propriedade válido, ID não é uma ID de objeto válida, ID é um tipo de objeto sem suporte para a propriedade especificada ou o chamador não tem permissão para exibir os metadados do objeto.

Nome da propriedade Tipo de objeto Descrição e valores retornados
BaseType Qualquer objeto com escopo de esquema Identifica o tipo base do objeto. Quando o objeto especificado é um SYNONYM, o tipo base do objeto subjacente é retornado.

Não-nulo = Tipo de objeto

Tipo de dados de base: char(2)
CnstIsClustKey Restrição PRIMARY KEY com um índice clusterizado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsColumn Restrição CHECK, DEFAULTou FOREIGN KEY restrição em uma única coluna.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsDeleteCascade Restrição FOREIGN KEY restrição com a ON DELETE CASCADE opção.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsDisabled Restrição Restrição desativada.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsNonclustKey Restrição PRIMARY KEY com um índice não clusterizado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsNotRepl Restrição A restrição é definida usando as NOT FOR REPLICATION palavras-chave.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsNotTrusted Restrição A restrição foi ativada sem verificar as linhas existentes. Portanto, a restrição pode não ser válida para todas as linhas.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
CnstIsUpdateCascade Restrição FOREIGN KEY restrição com a ON UPDATE CASCADE opção.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsAfterTrigger Acionador AFTER gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsAnsiNullsOn Transact-SQL função, Transact-SQL procedimento, Transact-SQL gatilho, vista A configuração de no momento da ANSI_NULLS criação.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsDeleteTrigger Acionador DELETE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsFirstDeleteTrigger Acionador O primeiro gatilho é acionado quando um DELETE é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsFirstInsertTrigger Acionador O primeiro gatilho é acionado quando um INSERT é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsFirstUpdateTrigger Acionador O primeiro gatilho é acionado quando um UPDATE é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsInsertTrigger Acionador INSERT gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsInsteadOfTrigger Acionador INSTEAD OF gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsLastDeleteTrigger Acionador Último gatilho disparado quando um DELETE é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsLastInsertTrigger Acionador Último gatilho disparado quando um INSERT é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsLastUpdateTrigger Acionador Último gatilho disparado quando um UPDATE é executado contra a tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsQuotedIdentOn Transact-SQL função, Transact-SQL procedimento, Transact-SQL gatilho, vista Configuração de no momento da QUOTED_IDENTIFIER criação.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsStartup Procedure Procedimento de inicialização.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsTriggerDisabled Acionador Gatilho desativado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsTriggerNotForRepl Acionador Gatilho definido como NOT FOR REPLICATION.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsUpdateTrigger Acionador UPDATE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
ExecIsWithNativeCompilation Transact-SQL Procedimento Aplica-se a: SQL Server 2014 (12.x) e versões posteriores.

O procedimento é compilado nativamente.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
HasAfterTrigger Tabela ou vista Tabela ou exibição tem um AFTER gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
HasDeleteTrigger Tabela ou vista A tabela ou vista tem um DELETE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
HasInsertTrigger Tabela ou vista Tabela ou exibição tem um INSERT gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
HasInsteadOfTrigger Tabela ou vista Tabela ou exibição tem um INSTEAD OF gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
HasUpdateTrigger Tabela ou vista Tabela ou exibição tem um UPDATE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsAnsiNullsOn Transact-SQL função, Transact-SQL procedimento, tabela, Transact-SQL gatilho, vista Especifica que a configuração de ANSI NULLS opção para a tabela é ON, ou seja, todas as comparações com um valor nulo são avaliadas como UNKNOWN. Essa configuração se aplica a todas as expressões na definição de tabela, incluindo colunas computadas e restrições, enquanto a tabela existir.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsCheckCnst Qualquer objeto com escopo de esquema CHECK restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsConstraint Qualquer objeto com escopo de esquema Restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsDefault Qualquer objeto com escopo de esquema Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Padrão vinculado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsDefaultCnst Qualquer objeto com escopo de esquema DEFAULT restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsDeterministic Funções escalares e com valor de tabela, vista A propriedade determinismo da função ou visão.

1 = Determinística

0 = Não determinístico

Tipo de dados de base: int
IsEncrypted Transact-SQL função, Transact-SQL procedimento, tabela, Transact-SQL gatilho, vista Indica que o texto original da instrução module foi convertido para um formato ofuscado. A saída da ofuscação não é diretamente visível em nenhuma das exibições de catálogo no SQL Server 2005 (9.x). Os usuários sem acesso a tabelas do sistema ou arquivos de banco de dados não podem recuperar o texto ofuscado. No entanto, o texto está disponível para usuários que podem acessar tabelas do sistema através da conexão de diagnóstico para administradores de banco de dados ou acessar diretamente arquivos de banco de dados. Além disso, os usuários que podem anexar um depurador ao processo do servidor podem recuperar o procedimento original da memória em tempo de execução.

1 = Criptografado

0 = Não criptografado

Tipo de dados de base: int
IsExecuted Qualquer objeto com escopo de esquema Especifica que o objeto pode ser executado (exibição, procedimento, função ou gatilho).

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsExtendedProc Qualquer objeto com escopo de esquema Procedimento alargado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsForeignKey Qualquer objeto com escopo de esquema FOREIGN KEY restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsIndexed Tabela ou vista Uma tabela ou vista com um índice.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsIndexable Tabela ou vista Uma tabela ou exibição na qual um índice pode ser criado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsInlineFunction Função Função em linha.

1 = Função em linha

0 = Função não embutida

Tipo de dados de base: int
IsMSShipped Qualquer objeto com escopo de esquema Um objeto criado durante a instalação do SQL Server.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsPrecise Coluna calculada, função, tipo definido pelo utilizador, vista Indica se o objeto contém um cálculo impreciso, como operações de ponto flutuante.

1 = Preciso

0 = Impreciso

Tipo de dados de base: int
IsPrimaryKey Qualquer objeto com escopo de esquema PRIMARY KEY restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsProcedure Qualquer objeto com escopo de esquema Procedimento.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsQuotedIdentOn CHECK restrição, DEFAULT definição, Transact-SQL função, Transact-SQL procedimento, tabela, Transact-SQL gatilho, vista Especifica que a configuração do identificador entre aspas para o objeto é ON, ou seja, aspas duplas delimitam identificadores em todas as expressões envolvidas na definição do objeto.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsQueue Qualquer objeto com escopo de esquema Fila do Service Broker

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsReplProc Qualquer objeto com escopo de esquema Procedimento de replicação.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsRule Qualquer objeto com escopo de esquema Regra vinculada.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsScalarFunction Função Função com valor escalar.

1 = Função com valor escalar

0 = Função com valor não escalar

Tipo de dados de base: int
IsSchemaBound Função, Procedimento, vista Uma função ou exibição vinculada ao esquema criada usando SCHEMABINDINGo .

1 = Vinculado ao esquema

0 = Não vinculado ao esquema

Tipo de dados de base: int
IsSystemTable Table Tabela do sistema.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsSystemVerified Coluna calculada, função, tipo definido pelo utilizador, vista As propriedades de precisão e determinismo do objeto podem ser verificadas pelo SQL Server.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsTable Table Tabela.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsTableFunction Função Função com valor de tabela.

1 = Função com valor de tabela

0 = Função sem valor de tabela

Tipo de dados de base: int
IsTrigger Qualquer objeto com escopo de esquema Gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsUniqueCnst Qualquer objeto com escopo de esquema UNIQUE restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsUserTable Table Tabela definida pelo usuário.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
IsView View Veja.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
OwnerId Qualquer objeto com escopo de esquema Proprietário do objeto.

Observação: O proprietário do esquema não é necessariamente o proprietário do objeto. Por exemplo, os objetos filho (aqueles em que parent_object_id não é nulo) sempre retornarão o mesmo ID de proprietário que o pai.

Não-nulo = ID de usuário do banco de dados do proprietário do objeto.

NULL = Tipo de objeto não suportado ou ID de objeto não é válido.

Tipo de dados de base: int
SchemaId Qualquer objeto com escopo de esquema A ID do esquema associado ao objeto.

Não-nulo = ID do esquema do objeto.

Tipo de dados de base: int
SystemDataAccess Função ou vista O objeto acessa dados do sistema, catálogos do sistema ou tabelas virtuais do sistema na instância local do SQL Server.

0 = Nenhum

1 = Leitura

Tipo de dados de base: int
TableDeleteTrigger Table A tabela tem um DELETE gatilho.

>1 = ID do primeiro gatilho com o tipo especificado.

Tipo de dados de base: int
TableDeleteTriggerCount Table A tabela tem o número especificado de DELETE gatilhos.

Não nulo = Número de DELETE gatilhos

Tipo de dados de base: int
TableFullTextMergeStatus Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Se uma tabela que tem um índice de texto completo que está atualmente em fusão.

0 = A tabela não tem um índice de texto completo ou o índice de texto completo não está em fusão.

1 = O índice de texto completo está em fusão.
TableFullTextBackgroundUpdateIndexOn Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

A tabela tem o índice de atualização de plano de fundo de texto completo (rastreamento de alteração automática) habilitado.

1 = VERDADEIRO

0 = FALSO

Tipo de dados de base: int
TableFulltextCatalogId Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

ID do catálogo de texto completo no qual residem os dados de índice de texto completo da tabela.

Diferente de zero = ID de catálogo de texto completo, associado ao índice exclusivo que identifica as linhas em uma tabela indexada de texto completo.

0 = A tabela não tem um índice de texto completo.

Tipo de dados de base: int
TableFullTextChangeTrackingOn Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

A tabela tem o controle de alterações de texto completo habilitado.

1 = VERDADEIRO

0 = FALSO

Tipo de dados de base: int
TableFulltextDocsProcessed Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de linhas processadas desde o início da indexação de texto completo. Em uma tabela que está sendo indexada para pesquisa de texto completo, todas as colunas de uma linha são consideradas como parte de um documento a ser indexado.

0 = Nenhum rastreamento ativo ou indexação de texto completo foi concluído.

> 0 = Um dos seguintes (A ou B): A) O número de documentos processados por operações de inserção ou atualização desde o início da população completa, incremental ou manual de controle de alterações; B) O número de linhas processadas por operações de inserção ou atualização desde que o controle de alterações com a população de índice de atualização em segundo plano foi habilitado, o esquema de índice de texto completo foi alterado, o catálogo de texto completo reconstruído ou a instância do SQL Server reiniciada e assim por diante.

NULL = A tabela não tem um índice de texto completo.

Tipo de dados de base: int

Observação Esta propriedade não monitoriza nem conta linhas eliminadas.
TableFulltextFailCount Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

O número de linhas que a pesquisa de texto completo não indexou.

0 = A população completou.

>0 = Um dos seguintes (A ou B): A) O número de documentos que não foram indexados desde o início da população de controle de alterações de Atualização Completa, Incremental e Manual; B) Para o controle de alterações com índice de atualização em segundo plano, o número de linhas que não foram indexadas desde o início da população, ou o reinício da população. Isso pode ser causado por uma alteração de esquema, reconstrução do catálogo, reinicialização do servidor e assim por diante

NULL = A tabela não tem um índice Full-Text.

Tipo de dados de base: int
TableFulltextItemCount Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Não-nulo = Número de linhas que foram indexadas com êxito ao texto completo.

NULL = A tabela não tem um índice de texto completo.

Tipo de dados de base: int
TableFulltextKeyColumn Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

ID da coluna associada ao índice exclusivo de coluna única que faz parte da definição de um índice de texto completo e índice semântico.

0 = A tabela não tem um índice de texto completo.

Tipo de dados de base: int
TableFulltextPendingChanges Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

Número de entradas pendentes de controle de alterações a serem processadas.

0 = o controlo de alterações não está ativado.

NULL = A tabela não tem um índice de texto completo.

Tipo de dados de base: int
TableFulltextPopulateStatus Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

0 = Inativo.

1 = A população completa está em andamento.

2 = A população incremental está em curso.

3 = A propagação das alterações controladas está em curso.

4 = O índice de atualização em segundo plano está em andamento, como o rastreamento de mudança automática.

5 = A indexação de texto completo é limitada ou pausada.

6 = Ocorreu um erro. Examine o log de rastreamento para obter detalhes. Para obter mais informações, consulte a seção Solução de problemas de erros em uma população de Full-Text (rastreamento) de Preencher Full-Text índices.

Tipo de dados de base: int
TableFullTextSemanticExtraction Table Aplica-se a: SQL Server 2012 (11.x) e versões posteriores.

A tabela está habilitada para indexação semântica.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasActiveFulltextIndex Table Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores.

A tabela tem um índice de texto completo ativo.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasCheckCnst Table A tabela tem uma CHECK restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasClustIndex Table A tabela tem um índice agrupado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasDefaultCnst Table A tabela tem uma DEFAULT restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasDeleteTrigger Table A tabela tem um DELETE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasForeignKey Table A tabela tem uma FOREIGN KEY restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasForeignRef Table A tabela é referenciada por uma FOREIGN KEY restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasIdentity Table A tabela tem uma coluna de identidade.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasIndex Table Tabela tem um índice de qualquer tipo.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasInsertTrigger Table O objeto tem um INSERT gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasNonclustIndex Table A tabela tem um índice não clusterizado.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasPrimaryKey Table A tabela tem uma chave primária.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasRowGuidCol Table A tabela tem uma ROWGUIDCOL coluna para um identificador exclusivo .

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasTextImage Table A tabela tem uma coluna de texto, ntext ou imagem .

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasTimestamp Table A tabela tem uma coluna de carimbo de data/hora .

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasUniqueCnst Table A tabela tem uma UNIQUE restrição.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasUpdateTrigger Table O objeto tem um UPDATE gatilho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableHasVarDecimalStorageFormat Table A tabela está habilitada para o formato de armazenamento vardecimal .

1 = Verdadeiro

0 = Falso
TableInsertTrigger Table A tabela tem um INSERT gatilho.

>1 = ID do primeiro gatilho com o tipo especificado.

Tipo de dados de base: int
TableInsertTriggerCount Table A tabela tem o número especificado de INSERT gatilhos.

>0 = O número de INSERT gatilhos.

Tipo de dados de base: int
TableIsFake Table A tabela não é real. Ele é materializado internamente sob demanda pelo Mecanismo de Banco de Dados.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableIsLockedOnBulkLoad Table A tabela está bloqueada porque um bcp ou BULK INSERT trabalho.

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int
TableIsMemoryOptimized Table Aplica-se a: SQL Server 2014 (12.x) e versões posteriores.

A tabela é otimizada para memória

1 = Verdadeiro

0 = Falso

Tipo de dados de base: int

Para obter mais informações, consulte In-Memory visão geral do OLTP e cenários de uso.
TableIsPinned Table A tabela é fixada para ser mantida no cache de dados.

0 = Falso

Esse recurso não é suportado no SQL Server 2005 (9.x) e versões posteriores.
TableTextInRowLimit Table A tabela tem texto na linha definida de opções.

> 0 = Máximo de bytes permitidos para texto em linha.

0 = a opção de texto na linha não está definida.

Tipo de dados de base: int
TableUpdateTrigger Table A tabela tem um UPDATE gatilho.

> 1 = ID do primeiro gatilho com o tipo especificado.

Tipo de dados de base: int
TableUpdateTriggerCount Table A tabela tem o número especificado de UPDATE gatilhos.

> 0 = O número de UPDATE gatilhos.

Tipo de dados de base: int
UserDataAccess Função ou vista Indica que o objeto acessa dados do usuário, tabelas do usuário, na instância local do SQL Server.

1 = Leitura

0 = Nenhum

Tipo de dados de base: int
TableHasColumnSet Table A tabela tem um conjunto de colunas.

0 = Falso

1 = Verdadeiro

Para obter mais informações, consulte Usar conjuntos de colunas.
Cardinality Tabela (definida pelo sistema ou pelo utilizador), vista ou índice Aplica-se a: SQL Server 2012 (11.x) e versões posteriores.

O número de linhas no objeto especificado.
TableTemporalType Table Aplica-se a: SQL Server 2016 (13.x) e versões posteriores.

Especifica o tipo de tabela.

0 = tabela não temporal

1 = tabela de histórico para tabela com versão do sistema

2 = tabela temporal com versão do sistema

Tipos de devolução

sql_variant

Exceptions

Retorna NULL em caso de erro ou se um chamador não tiver permissão para exibir o objeto.

Um usuário só pode visualizar os metadados de protegíveis que o usuário possui ou sobre os quais o usuário recebeu permissão. Isso significa que funções internas emissoras de metadados, como OBJECTPROPERTYEX, podem retornar NULL se o usuário não tiver nenhuma permissão no objeto. Para obter mais informações, consulte Configuração de visibilidade de metadados.

Observações

O Mecanismo de Banco de Dados pressupõe que object_id esteja no contexto atual do banco de dados. Uma consulta que faz referência a um object_id em outro banco de dados retorna NULL ou resultados incorretos. Por exemplo, na consulta a seguir, o contexto atual do banco de dados é o master banco de dados. O Mecanismo de Banco de Dados tenta retornar o valor da propriedade para o object_id especificado nesse banco de dados em vez do banco de dados especificado na consulta. A consulta retorna resultados incorretos porque o modo de exibição vEmployee não está no master banco de dados.

USE master;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'AdventureWorks2022.HumanResources.vEmployee'), 'IsView');
GO

OBJECTPROPERTYEX(view_id, 'IsIndexable') pode consumir recursos significativos do computador porque a avaliação da propriedade IsIndexable requer a análise da definição de exibição, normalização e otimização parcial. Embora a propriedade IsIndexable identifique tabelas ou exibições que podem ser indexadas, a criação real do índice ainda pode falhar se determinados requisitos de chave de índice não forem atendidos. Para obter mais informações, consulte CREATE INDEX (Transact-SQL).

OBJECTPROPERTYEX (table_id, 'TableHasActiveFulltextIndex') Retorna um valor de 1 (true) quando pelo menos uma coluna de uma tabela é adicionada para indexação. A indexação de texto completo torna-se ativa para a população assim que a primeira coluna é adicionada para indexação.

As restrições à visibilidade dos metadados são aplicadas ao conjunto de resultados. Para obter mais informações, consulte Configuração de visibilidade de metadados.

Examples

A. Localizar o tipo base de um objeto

O exemplo a seguir cria um SYNONYMMyEmployeeTable para a EmployeeAdventureWorks2025 tabela no banco de dados e, em seguida, retorna o tipo base do SYNONYM.

USE AdventureWorks2022;
GO
CREATE SYNONYM MyEmployeeTable FOR HumanResources.Employee;
GO
SELECT OBJECTPROPERTYEX ( object_id(N'MyEmployeeTable'), N'BaseType')AS [Base Type];
GO

O conjunto de resultados mostra que o tipo base do objeto subjacente, a Employee tabela, é uma tabela de usuário.

Base Type
--------
U

B. Devolver um valor de propriedade

O exemplo a seguir retorna o número de UPDATE gatilhos na tabela especificada.

USE AdventureWorks2022;
GO
SELECT OBJECTPROPERTYEX(OBJECT_ID(N'HumanResources.Employee'), N'TABLEUPDATETRIGGERCOUNT');
GO

C. Localizar tabelas que têm uma restrição de CHAVE ESTRANGEIRA

O exemplo a seguir usa a TableHasForeignKey propriedade para retornar todas as tabelas que têm uma FOREIGN KEY restrição.

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

Exemplos: Azure Synapse Analytics and Analytics Platform System (PDW)

D: Localizando o tipo base de um objeto

O exemplo a seguir retorna o tipo base do dbo.DimReseller objeto.

-- Uses AdventureWorks

SELECT OBJECTPROPERTYEX ( object_id(N'dbo.DimReseller'), N'BaseType')AS BaseType;

O conjunto de resultados mostra que o tipo base do objeto subjacente, a dbo.DimReseller tabela, é uma tabela de usuário.

BaseType
--------
U