COLUMNPROPERTY (Transact-SQL)

Actualizado: 17 de julio de 2006

Devuelve información acerca de una columna o de un parámetro de procedimiento.

Icono de vínculo a temas Convenciones de sintaxis de Transact-SQL


COLUMNPROPERTY ( id , column , property ) 

id

Es una expresión que contiene el identificador (Id.) de la tabla o del procedimiento.

column

Es una expresión que contiene el nombre de la columna o del parámetro.

property

Es una expresión que contiene la información que se devuelve para id y puede tener uno de los siguientes valores.

Valor Descripción Valor devuelto

AllowsNull

Acepta valores NULL.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

ColumnId

Valor del Id. de columna correspondiente a sys.columns.column_id.

Id. de columna

Cuando se consultan varias columnas, pueden aparecer espacios en la secuencia de valores de los Id. de columna.
ms174968.note(es-es,SQL.90).gifNota:

FullTextTypeColumn

TYPE COLUMN de la tabla que contiene la información del tipo de documento de column.

Id. de TYPE COLUMN de texto de la columna pasada como segundo parámetro de esta propiedad.

IsComputed

La columna es una columna calculada.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsCursorType

El parámetro de procedimiento es del tipo CURSOR.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsDeterministic

La columna es determinista. Esta propiedad sólo se aplica a columnas calculadas y columnas de vistas.

1 = Verdadero

0 = FALSE

NULL = La entrada no es válida. No es una columna calculada o una columna de vista.

IsFulltextIndexed

La columna se ha registrado para la indización de texto.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsIdentity

La columna utiliza la propiedad IDENTITY.

1 = Verdadero

0 = FALSE o NULL = La entrada no es válida.

IsIdNotForRepl

La columna comprueba el valor IDENTITY_INSERT. Si se especifica IDENTITY NOT FOR REPLICATION, no se comprueba el valor IDENTITY_INSERT.

1 = Verdadero

0 = FALSE

NULL = La entrada no es válida.

IsIndexable

La columna se puede indizar.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsOutParam

El parámetro de procedimiento es un parámetro de salida.

1 = Verdadero

0 = FALSE o NULL = La entrada no es válida.

IsPrecise

La columna es precisa. Esta propiedad sólo se aplica a columnas deterministas.

1 = Verdadero

0 = FALSE o NULL = La entrada no es válida. No es una columna determinista

IsRowGuidCol

La columna es del tipo de datos uniqueidentifier y se ha definido con la propiedad ROWGUIDCOL.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsSystemVerified

El SQL Server 2005 Database Engine (Motor de base de datos de SQL Server 2005) puede comprobar las propiedades de determinismo y precisión de la columna. Esta propiedad sólo se aplica a columnas calculadas y columnas de vistas.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

IsXmlIndexable

La columna XML se puede utilizar en un índice XML.

1 = Verdadero

0 = Falso

NULL = La entrada no es válida.

Precision

Longitud del tipo de datos de la columna o del parámetro.

Longitud del tipo de datos especificado para la columna

-1 = xml o tipos de valores grandes

NULL = La entrada no es válida.

Scale

Escala del tipo de datos de la columna o del parámetro.

Escala

NULL = La entrada no es válida.

SystemDataAccess

La columna se deriva de una función que tiene acceso a los datos de los catálogos del sistema o de las tablas virtuales del sistema de SQL Server. Esta propiedad sólo se aplica a columnas calculadas y columnas de vistas.

1 = TRUE (indica acceso de sólo lectura)

0 = Falso

NULL = La entrada no es válida.

UserDataAccess

La columna se deriva de una función que tiene acceso a los datos de las tablas de usuario, incluidas las vistas y tablas temporales, almacenadas en la instancia local de SQL Server. Esta propiedad sólo se aplica a columnas calculadas y columnas de vistas.

1 = TRUE (indica acceso de sólo lectura)

0 = Falso

NULL = La entrada no es válida.

UsesAnsiTrim

ANSI_PADDING se estableció en ON la primera vez que se creó la tabla. Esta propiedad sólo se aplica a columnas o parámetros de tipo char o varchar.

1= TRUE

0= FALSE

NULL = La entrada no es válida.

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

En SQL Server 2005, un usuario sólo puede ver los metadatos de asegurables que posea o para los que se le haya concedido permiso. Esto significa que las funciones integradas de emisión de metadatos, como COLUMNPROPERTY, pueden devolver NULL si el usuario no tiene ningún permiso para el objeto. Para obtener más información, vea Configuración de visibilidad de los metadatos y Solucionar problemas de visibilidad de los metadatos.

Cuando compruebe la propiedad determinista de una columna, verifique primero si se trata de una columna calculada. IsDeterministic devuelve NULL para las columnas no calculadas. Las columnas calculadas se pueden especificar como columnas de índice.

En el ejemplo siguiente se devuelve la longitud de la columna LastName.

USE AdventureWorks;
GO
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Contact'),'LastName','PRECISION')AS 'Column Length';
GO

Éste es el conjunto de resultados.

Column Length 
------------- 
50

(1 row(s) affected)

Versión Historial

17 de julio de 2006

Contenido nuevo:
  • Se ha agregado la sección Excepciones.

Adiciones de comunidad

AGREGAR
Mostrar: