Compartir a través de


OBJECTPROPERTYEX (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseInstancia administrada de Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de SQL Analytics en Microsoft FabricAlmacén en Microsoft FabricBase de datos SQL en Microsoft Fabric

La OBJECTPROPERTYEX función devuelve información sobre los objetos con ámbito de esquema en la base de datos actual.

Para obtener una lista de estos objetos, vea sys.objects (Transact-SQL). OBJECTPROPERTYEX no se puede usar para objetos que no tienen ámbito de esquema, como desencadenadores de lenguaje de definición de datos (DDL) y notificaciones de eventos.

Convenciones de sintaxis de Transact-SQL

Sintaxis

OBJECTPROPERTYEX ( id , property )

Argumentos

ID

Expresión que representa el identificador del objeto en la base de datos actual. Id. es int y se supone que es un objeto con ámbito de esquema en el contexto de base de datos actual.

property

Expresión que contiene la información que se va a devolver para el objeto especificado por id. El tipo de valor devuelto es sql_variant. En la siguiente tabla se muestra el tipo de datos base de cada valor de propiedad.

Nota

A menos que se indique lo contrario, NULL se devuelve cuando la propiedad no es un nombre de propiedad válido, id. no es un identificador de objeto válido, id . es un tipo de objeto no admitido para la propiedad especificada o el autor de la llamada no tiene permiso para ver los metadatos del objeto.

Nombre de propiedad Tipo de objeto Descripción y valores devueltos
BaseType Cualquier objeto en el ámbito de esquema Identifica el tipo base del objeto. Cuando el objeto especificado es , SYNONYMse devuelve el tipo base del objeto subyacente.

Non-null = Tipo de objeto

Tipo de datos base: char(2)
CnstIsClustKey Restricción PRIMARY KEY restricción con un índice agrupado.

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsColumn Restricción CHECKRestricción , DEFAULTo FOREIGN KEY en una sola columna.

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsDeleteCascade Restricción FOREIGN KEY restricción con la ON DELETE CASCADE opción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsDisabled Restricción Restricción deshabilitada.

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsNonclustKey Restricción PRIMARY KEY restricción con un índice no clúster.

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsNotRepl Restricción La restricción se define mediante las NOT FOR REPLICATION palabras clave .

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsNotTrusted Restricción La restricción se ha habilitado sin comprobar las filas existentes. Por lo tanto, es posible que la restricción no contenga todas las filas.

1 = Verdadero

0 = Falso

Tipo de datos base: int
CnstIsUpdateCascade Restricción FOREIGN KEY restricción con la ON UPDATE CASCADE opción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsAfterTrigger Desencadenador AFTER detonante.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsAnsiNullsOn Función de Transact-SQL, procedimiento de Transact-SQL, desencadenador de Transact-SQL, vista Configuración de en tiempo de ANSI_NULLS creación.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsDeleteTrigger Desencadenador DELETE detonante.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsFirstDeleteTrigger Desencadenador El primer desencadenador se desencadena cuando se ejecuta en DELETE la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsFirstInsertTrigger Desencadenador El primer desencadenador se desencadena cuando se ejecuta en INSERT la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsFirstUpdateTrigger Desencadenador El primer desencadenador se desencadena cuando se ejecuta en UPDATE la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsInsertTrigger Desencadenador INSERT detonante.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsInsteadOfTrigger Desencadenador INSTEAD OF detonante.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsLastDeleteTrigger Desencadenador Último desencadenador se desencadena cuando se ejecuta en DELETE la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsLastInsertTrigger Desencadenador El último desencadenador se desencadena cuando se ejecuta en INSERT la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsLastUpdateTrigger Desencadenador El último desencadenador se desencadena cuando se ejecuta en UPDATE la tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsQuotedIdentOn Función de Transact-SQL, procedimiento de Transact-SQL, desencadenador de Transact-SQL, vista Configuración de en tiempo de QUOTED_IDENTIFIER creación.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsStartup Procedimiento Procedimiento de inicio.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsTriggerDisabled Desencadenador Desencadenador deshabilitado.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsTriggerNotForRepl Desencadenador Desencadenador definido como NOT FOR REPLICATION.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsUpdateTrigger Desencadenador UPDATE detonante.

1 = Verdadero

0 = Falso

Tipo de datos base: int
ExecIsWithNativeCompilation Procedimiento de Transact-SQL Se aplica a: SQL Server 2014 (12.x) y versiones posteriores.

El procedimiento se compila de forma nativa.

1 = Verdadero

0 = Falso

Tipo de datos base: int
HasAfterTrigger Tabla o vista La tabla o vista tiene un AFTER desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
HasDeleteTrigger Tabla o vista La tabla o vista tiene un DELETE desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
HasInsertTrigger Tabla o vista La tabla o vista tiene un INSERT desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
HasInsteadOfTrigger Tabla o vista La tabla o vista tiene un INSTEAD OF desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
HasUpdateTrigger Tabla o vista La tabla o vista tiene un UPDATE desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsAnsiNullsOn Función de Transact-SQL, procedimiento de Transact-SQL, tabla, desencadenador de Transact-SQL, vista Especifica que la ANSI NULLS configuración de opción de la tabla es ON, lo que significa que todas las comparaciones con un valor NULL se evalúan como UNKNOWN. Este valor se aplica a todas las expresiones de la definición de tabla, incluidas las columnas calculadas y las restricciones, mientras la tabla exista.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsCheckCnst Cualquier objeto en el ámbito de esquema CHECK restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsConstraint Cualquier objeto en el ámbito de esquema Restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsDefault Cualquier objeto en el ámbito de esquema Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Valor predeterminado enlazado.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsDefaultCnst Cualquier objeto en el ámbito de esquema DEFAULT restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsDeterministic Funciones escalares y con valores de tabla, vista Propiedad de determinismo de la función o vista.

1 = Determinista

0 = No determinista

Tipo de datos base: int
IsEncrypted Función de Transact-SQL, procedimiento de Transact-SQL, tabla, desencadenador de Transact-SQL, vista Indica que el texto original de la instrucción del módulo se ha convertido a un formato confuso. La salida de la protección no es directamente visible en ninguna de las vistas de catálogo de SQL Server 2005 (9.x). Los usuarios sin acceso a las tablas del sistema o a los archivos de base de datos no pueden recuperar el texto ofuscado. Sin embargo, el texto está disponible para los usuarios que pueden acceder a las tablas del sistema a través de la conexión de diagnóstico para los administradores de bases de datos o acceder directamente a los archivos de base de datos. Además, los usuarios que pueden adjuntar un depurador al proceso del servidor pueden recuperar el procedimiento original de la memoria en tiempo de ejecución.

1 = Cifrada

0 = No cifrado

Tipo de datos base: int
IsExecuted Cualquier objeto en el ámbito de esquema Especifica que el objeto se puede ejecutar (vista, procedimiento, función o desencadenador).

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsExtendedProc Cualquier objeto en el ámbito de esquema Procedimiento extendido.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsForeignKey Cualquier objeto en el ámbito de esquema FOREIGN KEY restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsIndexed Tabla o vista Una tabla o vista con un índice.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsIndexable Tabla o vista Tabla o vista en la que se puede crear un índice.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsInlineFunction Función Función insertada.

1 = Función insertada

0 = Función no insertada

Tipo de datos base: int
IsMSShipped Cualquier objeto en el ámbito de esquema Un objeto creado durante la instalación de SQL Server.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsPrecise Columna calculada, función, tipo definido por el usuario, vista Indica si el objeto contiene un cálculo impreciso, como una operación de punto flotante.

1 = Preciso

0 = Impreciso

Tipo de datos base: int
IsPrimaryKey Cualquier objeto en el ámbito de esquema PRIMARY KEY restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsProcedure Cualquier objeto en el ámbito de esquema Procedimiento.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsQuotedIdentOn CHECK restricción, DEFAULT definición, función Transact-SQL, procedimiento Transact-SQL, tabla Transact-SQL disparador, vista Especifica que la configuración del identificador entre comillas para el objeto es ON, lo que significa que los identificadores delimitan entre comillas dobles en todas las expresiones implicadas en la definición de objeto.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsQueue Cualquier objeto en el ámbito de esquema Cola de Service Broker

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsReplProc Cualquier objeto en el ámbito de esquema Procedimiento de replicación.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsRule Cualquier objeto en el ámbito de esquema Regla enlazada.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsScalarFunction Función Función escalar.

1 = Función escalar

0 = Función no escalar

Tipo de datos base: int
IsSchemaBound Función, procedimiento y vista Función o vista enlazada al esquema creada mediante SCHEMABINDING.

1 = Enlazada al esquema

0 = No enlazada al esquema

Tipo de datos base: int
IsSystemTable Tabla Tabla del sistema.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsSystemVerified Columna calculada, función, tipo definido por el usuario, vista SQL Server puede comprobar las propiedades de precisión y determinismo del objeto.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsTable Tabla Tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsTableFunction Función Función con valores de tabla.

1 = Función con valores de tabla

0 = Función con valores no de tabla.

Tipo de datos base: int
IsTrigger Cualquier objeto en el ámbito de esquema Desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsUniqueCnst Cualquier objeto en el ámbito de esquema UNIQUE restricción.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsUserTable Tabla Tabla definida por el usuario.

1 = Verdadero

0 = Falso

Tipo de datos base: int
IsView Ver Vista.

1 = Verdadero

0 = Falso

Tipo de datos base: int
OwnerId Cualquier objeto en el ámbito de esquema Propietario del objeto.

Nota: El propietario del esquema no es necesariamente el propietario del objeto. Por ejemplo, los objetos secundarios (aquellos donde parent_object_id no son NULL) siempre devolverán el mismo identificador de propietario que el elemento primario.

Non-null = Id. de usuario de base de datos del propietario del objeto.

NULL = El tipo de objeto no admitido o el identificador de objeto no es válido.

Tipo de datos base: int
SchemaId Cualquier objeto en el ámbito de esquema Identificador de esquema asociado al objeto.

Non-null = Id. de esquema del objeto.

Tipo de datos base: int
SystemDataAccess Función o vista El objeto tiene acceso a datos del sistema, catálogos del sistema o tablas del sistema virtual, en la instancia local de SQL Server.

0 = Ninguna

1 = Lectura

Tipo de datos base: int
TableDeleteTrigger Tabla La tabla tiene un DELETE desencadenador.

>1 = Id. del primer desencadenador con el tipo especificado.

Tipo de datos base: int
TableDeleteTriggerCount Tabla La tabla tiene el número especificado de DELETE desencadenadores.

Nonnull = Número de DELETE desencadenadores

Tipo de datos base: int
TableFullTextMergeStatus Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Indica si una tabla que tiene un índice de texto completo se está combinando actualmente.

0 = La tabla no tiene un índice de texto completo o el índice de texto completo no se está combinando.

1 = El índice de texto completo se está combinando.
TableFullTextBackgroundUpdateIndexOn Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

La tabla tiene habilitado el índice de actualización de texto completo en segundo plano (seguimiento de cambios automáticos).

1 = VERDADERO

0 = False

Tipo de datos base: int
TableFulltextCatalogId Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Identificador del catálogo de texto completo en el que residen los datos de índice de texto completo para la tabla.

Distinto de cero = Identificador del catálogo de texto completo, asociado al índice único que identifica las filas en una tabla indizada de texto completo.

0 = La tabla no tiene un índice de texto completo.

Tipo de datos base: int
TableFullTextChangeTrackingOn Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

La tabla tiene habilitado el seguimiento de cambios de texto completo.

1 = VERDADERO

0 = False

Tipo de datos base: int
TableFulltextDocsProcessed Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Número de filas procesadas desde el comienzo de la indización de texto completo. En una tabla que se indiza para búsquedas en texto completo, todas las columnas de una fila se consideran como parte de un documento que se va a indizar.

0 = No se ha completado ningún rastreo activo ni ninguna indización de texto completo.

> 0 = Uno de los casos siguientes (A o B): A) El número de documentos procesados por operaciones de inserción o actualización desde el inicio del rellenado de seguimiento de cambios completo, incremental o manual; B) El número de filas procesadas por operaciones de inserción o actualización desde que se habilitó el seguimiento de cambios con el rellenado del índice de actualización en segundo plano, la modificación del esquema de índice de texto completo, la regeneración del catálogo de texto completo o el reinicio de la instancia de SQL Server, etc.

NULL = La tabla no tiene un índice de texto completo.

Tipo de datos base: int

Nota: Esta propiedad no supervisa ni cuenta las filas eliminadas.
TableFulltextFailCount Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Número de filas que no ha indizado la búsqueda de texto completo.

0 = El rellenado se ha completado.

>0 = Uno de los casos siguientes (A o B): A) Número de documentos no indizados desde el comienzo del rellenado de seguimiento de cambios de actualización completa, incremental y manual; B) Para el seguimiento de cambios con actualización de índices en segundo plano, el número de filas no indizadas desde el comienzo del rellenado o desde su reinicio. Esto podría ser debido a un cambio de esquema, una regeneración del catálogo, un reinicio del servidor, etc.

NULL = La tabla no tiene un índice Full-Text.

Tipo de datos base: int
TableFulltextItemCount Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Non-null = Número de filas que se indizaron correctamente con texto completo.

NULL = La tabla no tiene un índice de texto completo.

Tipo de datos base: int
TableFulltextKeyColumn Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Identificador de la columna asociada al índice único de una sola columna que forma parte de la definición de un índice de texto completo y un índice semántico.

0 = La tabla no tiene un índice de texto completo.

Tipo de datos base: int
TableFulltextPendingChanges Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

Número de entradas de seguimiento de cambios pendientes de procesamiento.

0 = El seguimiento de cambios no está habilitado.

NULL = La tabla no tiene un índice de texto completo.

Tipo de datos base: int
TableFulltextPopulateStatus Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

0 = Inactiva

1 = Rellenado completo en curso.

2 = Rellenado incremental en curso.

3 = Propagación de cambios de seguimiento en curso.

4 = Actualización de índices en segundo plano en curso, como el seguimiento de cambios automáticos.

5 = Indización de texto completo acelerada o pausada.

6 = Se produjo un error. Examine el registro de rastreo para obtener más información. Para obtener más información, consulte la sección Solución de errores en un rellenado de texto completo (rastreo) de Rellenar índices de texto completo.

Tipo de datos base: int
TableFullTextSemanticExtraction Tabla Se aplica a: SQL Server 2012 (11.x) y versiones posteriores.

La tabla está habilitada para la indización semántica.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasActiveFulltextIndex Tabla Se aplica a: SQL Server 2008 (10.0.x) y versiones posteriores.

La tabla tiene un índice de texto completo activo.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasCheckCnst Tabla La tabla tiene una CHECK restricción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasClustIndex Tabla La tabla tiene un índice clúster.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasDefaultCnst Tabla La tabla tiene una DEFAULT restricción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasDeleteTrigger Tabla La tabla tiene un DELETE desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasForeignKey Tabla La tabla tiene una FOREIGN KEY restricción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasForeignRef Tabla Una restricción hace referencia a la FOREIGN KEY tabla.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasIdentity Tabla La tabla tiene una columna de identidad.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasIndex Tabla La tabla tiene un índice de cualquier tipo.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasInsertTrigger Tabla El objeto tiene un INSERT desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasNonclustIndex Tabla La tabla tiene un índice no agrupado.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasPrimaryKey Tabla La tabla tiene una clave principal.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasRowGuidCol Tabla La tabla tiene un ROWGUIDCOL para una columna uniqueidentifier .

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasTextImage Tabla La tabla tiene una columna text, ntext o image.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasTimestamp Tabla La tabla tiene una columna timestamp.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasUniqueCnst Tabla La tabla tiene una UNIQUE restricción .

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasUpdateTrigger Tabla El objeto tiene un UPDATE desencadenador.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableHasVarDecimalStorageFormat Tabla La tabla está habilitada para el formato de almacenamiento vardecimal.

1 = Verdadero

0 = Falso
TableInsertTrigger Tabla Table tiene un INSERT desencadenador.

>1 = Id. del primer desencadenador con el tipo especificado.

Tipo de datos base: int
TableInsertTriggerCount Tabla La tabla tiene el número especificado de INSERT desencadenadores.

>0 = Número de INSERT desencadenadores.

Tipo de datos base: int
TableIsFake Tabla La tabla no es real. El Motor de base de datos la materializa internamente a petición.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableIsLockedOnBulkLoad Tabla La tabla está bloqueada porque un bcp o BULK INSERT un trabajo.

1 = Verdadero

0 = Falso

Tipo de datos base: int
TableIsMemoryOptimized Tabla Se aplica a: SQL Server 2014 (12.x) y versiones posteriores.

La tabla tiene optimización para memoria

1 = Verdadero

0 = Falso

Tipo de datos base: int

Para obtener más información, consulte In-Memory escenarios de uso y información general de OLTP.
TableIsPinned Tabla La tabla se ancla para que se mantenga en la memoria caché de datos.

0 = Falso

Esta característica no se admite en SQL Server 2005 (9.x) ni en versiones posteriores.
TableTextInRowLimit Tabla La tabla tiene establecida la opción text in row.

> 0 = Número máximo de bytes permitidos para text in row.

0 = La opción text in row no está establecida.

Tipo de datos base: int
TableUpdateTrigger Tabla Table tiene un UPDATE desencadenador.

> 1 = Identificador del primer desencadenador con el tipo especificado.

Tipo de datos base: int
TableUpdateTriggerCount Tabla La tabla tiene el número especificado de UPDATE desencadenadores.

> 0 = Número de UPDATE desencadenadores.

Tipo de datos base: int
UserDataAccess Función o vista Indica que el objeto obtiene acceso a datos y tablas de usuario en la instancia local de SQL Server.

1 = Lectura

0 = Ninguna

Tipo de datos base: int
TableHasColumnSet Tabla La tabla tiene un conjunto de columnas.

0 = Falso

1 = Verdadero

Para obtener más información, consulte Uso de conjuntos de columnas.
Cardinality Tabla (del sistema o definida por el usuario), vista o índice Se aplica a: SQL Server 2012 (11.x) y versiones posteriores.

El número de filas del objeto especificado.
TableTemporalType Tabla Se aplica a: SQL Server 2016 (13.x) y versiones posteriores.

Especifica el tipo de tabla.

0 = tabla no temporal

1 = tabla de historial para la tabla con control de versiones del sistema

2 = tabla temporal con control de versiones del sistema

Tipos de retorno

sql_variant

Excepciones

Devuelve NULL el error o si un autor de la llamada no tiene permiso para ver el objeto.

Un usuario solo puede ver los metadatos de elementos protegibles que posea o para los que se le haya concedido permiso. Esto significa que las funciones integradas que emiten metadatos, como OBJECTPROPERTYEX, pueden devolver NULL si el usuario no tiene ningún permiso en el objeto. Para obtener más información, consulte Configuración de visibilidad de metadatos.

Comentarios

El Motor de base de datos da por hecho que object_id se encuentra en el contexto de la base de datos actual. Una consulta que hace referencia a un object_id en otra base de datos devuelve NULL o resultados incorrectos. Por ejemplo, en la consulta siguiente, el contexto de base de datos actual es la master base de datos. El motor de base de datos intenta devolver el valor de propiedad del object_id especificado en esa base de datos en lugar de la base de datos especificada en la consulta. La consulta devuelve resultados incorrectos porque la vista vEmployee no está en la master base de datos.

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

OBJECTPROPERTYEX(view_id, 'IsIndexable') puede consumir recursos de equipo significativos porque la evaluación de la propiedad IsIndexable requiere el análisis de la definición de vista, la normalización y la optimización parcial. Aunque la propiedad IsIndexable identifica tablas o vistas que se pueden indizar, es posible que se produzca un error en la creación real del índice si no se cumplen ciertos requisitos de clave de índice. Para más información, consulte CREATE INDEX (Transact-SQL).

OBJECTPROPERTYEX (table_id, 'TableHasActiveFulltextIndex') devuelve un valor de 1 (true) cuando se agrega al menos una columna de una tabla para la indexación. El índice de texto completo se activa para su llenado en el momento en que se agrega la primera columna para la indización.

Se aplican restricciones sobre la visibilidad de los metadatos al conjunto de resultados. Para obtener más información, consulte Configuración de visibilidad de metadatos.

Ejemplos

A. Buscar el tipo base de un objeto

En el ejemplo siguiente se crea un SYNONYMMyEmployeeTable para la tabla de la EmployeeAdventureWorks2025 base de datos y, a continuación, se devuelve el tipo base de SYNONYM.

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

El conjunto de resultados muestra que el tipo base del objeto subyacente, la tabla Employee, es una tabla de usuario.

Base Type
--------
U

B. Devolver un valor de propiedad

En el ejemplo siguiente se devuelve el número de desencadenadores de UPDATE la tabla especificada.

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

C. Búsqueda de tablas que tienen una restricción FOREIGN KEY

En el ejemplo siguiente se usa la TableHasForeignKey propiedad para devolver todas las tablas que tienen una FOREIGN KEY restricción .

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

Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)

D. Buscar el tipo base de un objeto

En el ejemplo siguiente se devuelve el tipo de objeto dbo.DimReseller de base.

-- Uses AdventureWorks

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

El conjunto de resultados muestra que el tipo base del objeto subyacente, la tabla dbo.DimReseller, es una tabla de usuario.

BaseType
--------
U